linux inifile.h

#ifndef __CONFIG_H__
#define __CONFIG_H__


#include <string>
#include <map>


using namespace std;


class CIniFile
{
public:
CIniFile(const string &strFileName);
~CIniFile(void);


int Dump();


int ReadItem(const string& strSection, const string& strKey, const string& strDefault, string& strValue);
int WriteItem(const string& strSection, const string& strKey, const string& strValue);


private:
int Load();
int Save();


int ReadLine(FILE* pFile, string& strLine);
int TrimString(string& strToken);


private:
static const int BUFFER_LEN = 1024;
string m_strFileName;
typedef map<string, string> ConfigType;
map<string, ConfigType> m_mSec2Config;
};


#endif /* __CONFIG_H__ */

版权声明:本文为gaoli8393原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。