⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 inifile.cpp

📁 这是和p2p相关的一份源码
💻 CPP
字号:
// ------------------------------------------------// File : inifile.cpp// Date: 4-apr-2002// Author: giles// Desc: //		.INI file reading/writing class//// (c) 2002 peercast.org// ------------------------------------------------// This program is free software; you can redistribute it and/or modify// it under the terms of the GNU General Public License as published by// the Free Software Foundation; either version 2 of the License, or// (at your option) any later version.// This program is distributed in the hope that it will be useful,// but WITHOUT ANY WARRANTY; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the// GNU General Public License for more details.// ------------------------------------------------#include <stdlib.h>#include "inifile.h"#include "sys.h"	void	openReadOnly(const char *);	void	openWriteReplace(const char *);// -----------------------------------------bool IniFile::openReadOnly(const char *fn){	try 	{		fStream.openReadOnly(fn);	}catch(StreamException &)	{		return false;	}	return true;}// -----------------------------------------bool IniFile::openWriteReplace(const char *fn){	try 	{		fStream.openWriteReplace(fn);#if defined(_LINUX) || defined(__APPLE__)		fStream.writeCRLF = false;#endif	}catch(StreamException &)	{		return false;	}	return true;}// -----------------------------------------void IniFile::close(){	fStream.close();}// -----------------------------------------bool	IniFile::readNext(){	if (fStream.eof())		return false;	try	{		fStream.readLine(currLine,256);	}catch(StreamException &)	{		return false;	}	// find end of value name and null terminate	char *nend = strstr(currLine,"=");	if (nend)	{		*nend = 0;		valueStr = trimstr(nend+1);	}else		valueStr = NULL;	nameStr = trimstr(currLine);	return true;}// -----------------------------------------bool IniFile::isName(const char *str){	return stricmp(getName(),str)==0;}// -----------------------------------------char *	IniFile::getName(){	return nameStr;}// -----------------------------------------int		IniFile::getIntValue(){	if (valueStr)		return atoi(valueStr);	else		return 0;}// -----------------------------------------char *	IniFile::getStrValue(){	if (valueStr)		return valueStr;	else		return "";}// -----------------------------------------bool	IniFile::getBoolValue(){	if (!valueStr)		return false;	if ( (stricmp(valueStr,"yes")==0) ||		 (stricmp(valueStr,"y")==0) ||		 (stricmp(valueStr,"1")==0) )		return true;	return false;}// -----------------------------------------void	IniFile::writeIntValue(const char *name, int iv){	sprintf(currLine,"%s = %d",name,iv);	fStream.writeLine(currLine);}// -----------------------------------------void	IniFile::writeStrValue(const char *name, const char *sv){	sprintf(currLine,"%s = %s",name,sv);	fStream.writeLine(currLine);}// -----------------------------------------void	IniFile::writeSection(const char *name){	fStream.writeLine("");	sprintf(currLine,"[%s]",name);	fStream.writeLine(currLine);}// -----------------------------------------void	IniFile::writeBoolValue(const char *name, int v){	sprintf(currLine,"%s = %s",name,(v!=0)?"Yes":"No");	fStream.writeLine(currLine);}// -----------------------------------------void	IniFile::writeLine(const char *str){	fStream.writeLine(str);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -