📄 gppinifile.h
字号:
/*
GGGGGGG AAA MMM MMM EEEEEEEEEEE ++++ _/_/
GG GG AA AA MMMMM MMMMM EE ++++ _/_/
GG AA AA MM MM MM MM EE ++++ _/_/
GG AA AA MM MMM MM EEEEEEEEEEE +++++++++++++++++ _/_/_/_/_/_/_/_/_/
GG AAAAAAAAAAA MM MM EEEEEEEEEEE +++++++++++++++++ _/_/_/_/_/_/_/_/_/
GG GGGGGG AA AA MM MM EE ++++ _/_/
GG GG AA AA MM MM EE ++++ _/_/
GGGGGGG AAAA AAAA MMMM MMMM EEEEEEEEEEE ++++ _/_/
Game++ Game Engine---
Game++ Studio版权所有
http://www.gamepp.org/
File:gppIniFile.h
Purpose:ini文件处理
文件格式:key=something
注意:区分大小写!
Author:Kylinx (game++Studio member)
Created Date:<2003/10/18
Last Updated by:Kylinx
Last Updated Date:2003/10/23
*/
#ifndef GPP_INIFILE_H_
#define GPP_INIFILE_H_
#include<string>
#include<vector>
using namespace std;
class GVPacker;
class GFileLoader;
class GIniFile
{
char *m_pBuffer; //文件缓冲首地址
char *m_pSegBuffer; //当前段首地址
char *m_pSegCur; //当前段指针
char *m_pSegEnd; //当前段末地址
char *m_pCurrent; //文件缓冲指针
char *m_pEnd; //文件末地址
unsigned long m_dwSize; //文件大小
string m_strSegName; //段名
public:
GIniFile();
virtual ~GIniFile();
bool LoadIniFileName(const string & strName,GVPacker*pPacker);
bool LoadIniFileName(GFileLoader*pFileLoader,const string & strName);
bool SetSegment(const string & strSegName); //设置要读取的段
string GetSegment(); //得到段名
unsigned long ReadDword(const string & strKeyName,unsigned long dwDefaultValue);//从ini文件中读取一个整数,如果不存在键则返回dwDefaultValue
string ReadString(const string & strKeyName,const string & strDefaultValue);//读取一个字符串,如果不存在则返回strDefaultValue;
vector<unsigned long> ReadDwordArray(const string & strKeyName);
//读取一个unsigned long数组,在ini文件中表示如下
//Array=223,1223,232,35
vector<string> ReadStringArray(const string & strKeyName);
//读取一个字符串数组,表示如下
//StringArray=str1,str2,str3
private:
void Free(); //释放
string ReadLine(char*&pCur,char*&pEnd); //读一行
bool IsNum(const char c); //判断是否是ascii码的字母
bool IsChar(const char c); //判断是否是ascii码的数字
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -