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

📄 cbiniparser.h

📁 非常好用的可移植的多平台C/C++源代码编辑器
💻 H
字号:
#ifndef CB_INIPARSER_H
#define CB_INIPARSER_H

#include <wx/string.h>
#include <wx/dynarray.h>
#include <wx/textctrl.h>

struct IniKeyValuePair
{
    wxString key;
    wxString value;
};
WX_DECLARE_OBJARRAY(IniKeyValuePair, IniKeyValuePairArray);

struct IniGroup
{
    wxString name;
    IniKeyValuePairArray pairs;
};
WX_DECLARE_OBJARRAY(IniGroup, IniGroupArray);

class IniParser
{
	public:
		IniParser();
		~IniParser();
		
		bool ParseFile(const wxString& filename);
		bool ParseBuffer(wxString& buffer);
		
		int GetGroupsCount() const;
		const wxString& GetGroupName(int idx) const;
		int FindGroupByName(const wxString& name, bool caseSensitive = false) const;
		int GetKeysCount(int group) const;
		const wxString& GetKeyName(int group, int idx) const;
		const wxString& GetKeyValue(int group, int idx) const;
		const wxString& GetKeyValue(int group, const wxString& key) const;
		int FindKeyByName(int groupIdx, const wxString& name, bool caseSensitive = false) const;
		const wxString& GetValue(const wxString& group, const wxString& key, bool caseSensitive = false) const;
		void Sort(bool caseSensitive = false);
	protected:
        wxString ReadLineFromBuffer(wxString& buffer);
		IniGroupArray m_Array;
	private:
		
};


#endif // CB_INIPARSER_H

⌨️ 快捷键说明

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