用VC读取和分析格式化文本配置文件

中国卢高星

中国卢高星

2016-02-19 16:19

人生本是一个不断学习的过程,在这个过程中,图老师就是你们的好帮手,下面分享的用VC读取和分析格式化文本配置文件懂设计的网友们快点来了解吧!

  大多数的应用程序都有需要配置的参数,配置参数的保存有多种方法,比如采用数据库保存、二进制文件保存、格式化的文本文件保存,各有优缺点,对于一般小的安全性要求不高应用程序,推荐采用格式化文本文件保存方式,这样可以节约编辑修改的界面编程,使用记事本程序编辑即可。

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  早期的windows就是采用的INI格式文本文件。现在很多应用程序包括大型的软件也还在采用格式化文本文件保存配置参数,比如Bentely MicroStation GIS平台GEOGRAPHICS8.0。

  本文给出的就是利用VC来读取和分析配置文本文件,这是笔者这消防监控系统远程终端软件使用的方法。同时给出一个C++类来封装配置文本文件的读取分析。

  下面是我采用的配置文件的例子,包含单个参数定义,表格参数定义,注释:

// 协议名称: TL
// 工程: SQ
// 配置人: JY
#DEFINE_BEGIN //以下为常量定义

//通信参数
@COM_PORT .COM1 //COM口
@COM_BAUDRATE 1200 //波特率
@COM_BITSIZE 8 //数据位 number of bits/byte, 4-8
@COM_STOPBIT 0 // 0,1,2 对应 1, 1.5, 2
@COM_PARITY 0 //0-4对应no,odd,even,mark,space
@STATIONNO 0 //终端号
@TCPIP_SERVERIP 192.168.0.10 //服务器IP地址
@TCPIP_PORTNO 3024 //端口

#DEFINE_END


#TABLE_BEGIN //表格
//编号 识别字符串
//例子如下
0 Ion Detector, ALU1, L1S43 //测量台2#离子烟感探测器 报警
1 Thermal Det, ALU1, L1S39 //值班室温感探测器报警

#TABLE_END

语法解释:
// 单行注释
#DEFINE_BEGIN 单个参数定义的开始标记
#DEFINE_END 单个参数定义的结束标记
#TABLE_BEGIN 表格参数开始标记
#TABLE_END 表格参数结束标记

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

单个参数的配置:
每个参数一行:以空格、TAB制表符作为分隔,注释可选,每行结束后有Enter键换行。
表格参数配置:第一列为数字编号,作为ID用,第一列和第二列之间采用空格、TAB制表符作为分隔,其他列之间采用','逗号、空格、TAB制表符分隔,因此从第二列起,字符串中间夹的空格是有效字符。比如上面例子中的第一行解释如下:
"0","Ion Detector","ALU1","L1S43"
同样,表格参数也是每行有Enter键换行。
下面给出一个C++类来完成这个格式的文本配置读取和分析。

规模:

文本文件的大小:48kbytes
单个参数定义个数:不限
表格参数定义: 100行 X 4列
这些规模大小可以修改下面的宏定义来满足你的需要

#define TABLE_MAXROW 100
#define TABLE_MAXCOL 5 //含索引ID列
typedef struct{
int nID;
char s[TABLE_MAXCOL-1][64];

}TAG_TABLEREC,*LPTABLEREC;

class CDataTxt
{
public:
CDataTxt();
~CDataTxt();
CString m_szPath;//配置文件全路经名

BOOL Read();//读入文件
BOOL GetDefine(LPCTSTR lpszName,CString &szVal);//获取定义

//{{TABLE
TAG_TABLEREC m_Table[TABLE_MAXROW];
int m_nRows;
/

展开更多 50%)
分享

猜你喜欢

用VC读取和分析格式化文本配置文件

编程语言 网络编程
用VC读取和分析格式化文本配置文件

vc里读取配置文件(ini)的问题

编程语言 网络编程
vc里读取配置文件(ini)的问题

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

读取和处理XM的配置文件

编程语言 网络编程
读取和处理XM的配置文件

java读取配置文件例子

编程语言 网络编程
java读取配置文件例子

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

JAVA:配置文件读取器

编程语言 网络编程
JAVA:配置文件读取器

FinalData恢复格式化文件教程

电脑网络
FinalData恢复格式化文件教程

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

VC6下编译进Ring0代码的疑惑

VC6下编译进Ring0代码的疑惑

正则表达式使用详解(2)

正则表达式使用详解(2)
下拉加载更多内容 ↓