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

📄 inifile.h

📁 电力故障信息采集,主要是针对南自的保护装置,这个程序用在Linux操作系统下
💻 H
字号:
//IniFile.h
#if !defined(AFX_INIFILE_H__D6BE0D97_13A8_11D4_A5D2_002078B03530__INCLUDED_)
#define AFX_INIFILE_H__D6BE0D97_13A8_11D4_A5D2_002078B03530__INCLUDED_


////////////////////////////////////////////////////////////
/*
编写人:邵凯田,日期:2002年5月

INI文件操作类,可读写INI文件
*/
////////////////////////////////////////////////////////////

#include <stdio.h>
#include <stdlib.h>
#include <vector>
#include "YsString.h"

#ifndef NULL
#define NULL 0
#endif

class CIniFile;

typedef CIniFile CIniProcesser;
class CIniFile
{
public:
	struct stuIniFileField;

	struct stuIniFileGroup
	{
		YsString sGroupName;
		stuIniFileField *pFirstField;
		stuIniFileGroup *pNext;
	};

	struct stuIniFileField
	{
		YsString sFieldName;
		YsString sValue;
		stuIniFileField *pNext;
	};
public:
	CIniFile();
	~CIniFile();

	void SetPath(YsString sPathFile);
	bool ReadIniFile(YsString sPathFile="");
	bool IsKey(YsString sGroup, YsString sField);
	YsString GetValue(YsString sGroup,YsString sField);
	int GetKeyIntValue(YsString szsector, YsString szkey, int idefault = 0);
	YsString GetKeyStringValue(YsString szsector, YsString szkey, YsString szdefault = "");

	bool SetValue(YsString sGroup,YsString sField,YsString sVal);
	bool SetKeyIntValue(YsString szsector, YsString szkey, int ivalue, bool autoSave=true);
	bool SetKeyStringValue(YsString szsector, YsString szkey, YsString szvalue, bool autoSave=true);

	bool WriteFile();

	void Release();
	inline bool IsOpened(){return m_bOpened;};

private:
	stuIniFileGroup * GetGroup(YsString sGroup,bool bCreate=true);
	stuIniFileField * GetField(YsString sGroup,YsString sField,bool bCreate=true);
private:
	bool m_bOpened;
	stuIniFileGroup *m_pFirstGroup;
	YsString m_sPathFile;
};

#endif // !defined(AFX_INIFILE_H__D6BE0D97_13A8_11D4_A5D2_002078B03530__INCLUDED_)

⌨️ 快捷键说明

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