`
kmplayer
  • 浏览: 494983 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

关于对宽字符的读写

 
阅读更多
非常蛋疼的过程,具体的细节还得继续学习.
1,文件的写
void Cibm_testDlg::OnBnClickedButtonSave()
{
	// TODO: Add your control notification handler code here
	UpdateData(TRUE);
	CString defFileName=CString("configure.ini");
	CFileDialog fileDlg(false,L"ini",defFileName);
	fileDlg.m_ofn.lpstrTitle=L"Save Configure File:";
	fileDlg.m_ofn.lpstrFilter=L"configure files(.ini)\0*.ini\0\0";
	CString path;
	GetModuleFileName(NULL,path.GetBufferSetLength (MAX_PATH+1),MAX_PATH);
	path=path.Left (path.ReverseFind ('\\'))+L"\\";
	fileDlg.m_ofn.lpstrInitialDir=path;
	CString str;
	if(IDOK==fileDlg.DoModal())
	{
		//这里对宽字符的读写,需要一些特殊的处理
		CStdioFile file(fileDlg.GetPathName(),CFile::modeCreate|CFile::modeReadWrite|CFile::typeBinary);
		char fx[2]; //增加特殊的标志,表示是Unicode编码
		fx[0]=0xFF;
		fx[1]=0xFE;
		file.Write(fx,2);
		str.Format(L"%d",isAutoGeneration);
		//回车符的添加
		str=str+L"\r\n";
		file.WriteString(str);
		str.Format(L"%d",isAutoModification);
		str=str+L"\r\n";
		file.WriteString(str);
		str.Format(L"%d",totalFileSize);
		str=str+L"\r\n";
		file.WriteString(str);
		str.Format(L"%d",perFileSize);
		str=str+L"\r\n";
		file.WriteString(str);
		file.Close();
	}
}

2,文件的读
CString path;
GetModuleFileName(NULL,path.GetBufferSetLength (MAX_PATH+1),MAX_PATH);
path=path.Left (path.ReverseFind ('\\'))+L"\\configure.ini";
CStdioFile file;
if(!file.Open(path,CFile::modeRead|CFile::typeBinary)) 
{
    MessageBox(L"Unable to open configure file\n");
}
else
{
    char fx[2];
    file.Read(fx,2);
    CString str;
    file.ReadString(str);
    isAutoGeneration=_ttoi(str);
    file.ReadString(str);
    isAutoModification=_ttoi(str);
    file.ReadString(str);
    totalFileSize=_ttoi(str);
    file.ReadString(str);
    perFileSize=_ttoi(str);
}
分享到:
评论

相关推荐

    字符设备驱动程序实现读写功能

    这是字符设备驱动的经典程序,globalmem可以实现对设备的读写操作,很有意思,希望大神们多多指教。

    Linux字符设备驱动(转载)

    可以使用与普通文件相同的文件操作命令对字符设备文件进行操作,例如打开、关闭、读、写等 字符设备是最基本、最常用的设备。概括的说,字符设备驱动主要要做三件事:1、定义一个结构体static struct file_...

    基于VC++6.0 对读写有规律命名的文件,字符串的连接

    工程里有两个cpp文件,zifu.cpp文件是针对字符串连接以及读写文件,字符串.cpp是开始练习使用的,两者都可以运行。

    C语言 以字符形式读写文件详解及示例代码

    在C语言中,读写文件比较灵活,既可以每次读写一个字符,也可以读写一个字符串,甚至是任意字节的数据(数据块)。本节介绍以字符形式读写文件。 以字符形式读写文件时,每次可以从文件中读取一个字符,或者向文件中...

    字符设备驱动

    简单的字符设备驱动程序,包含文件打开关闭,读写,位置控制等等。

    C语言-文件读写操作教程全解-C中主要读写函数的解析+案例

    包括文件的打开与关闭,对文件指针赋值,顺序读写(单字符读写,字符串读写,二进制读写),随机读写与文件结束判定。本文潜入深出,用通俗易懂的语言向读者介绍了C中一系列有关读写的内容。同时文章特点突出,在...

    linux 添加字符设备驱动程序及测试程序.zip

    linux 添加字符设备驱动程序及测试程序,linux下采用模块方法,添加一个新的设备驱动程序。要求添加字符设备的驱动。另附一个应用程序,测试添加的驱动程序. int main(void) { int fd; char buf[MAX_SIZE]; char ...

    C#对TXT读写实例

    C#操作TXT的实力,包括新建,删除,以及字符串处理

    VC实现对XML文档的读写操作

    VC实现对XML文档的读写操作,可以进行简单数据的存取和传输

    文件读写排列

    对txt文件进行读写操作,包括字符串排序等

    关于I/O流读写文件

    这个都是我学习的时候写的关于I/O流的读写操作。可以直接那来用的,里面都注明过。很好看懂的。很不错哦

    trf_字符检测_字符分类_

    用自己的模板图片对字符进行分类检测,需要自己先保存一些字符图片

    纯c读写ini配置文件

    2、支持带引号'或"成对匹配的字符串,提取时自动去引号。引号中可带其它引号或;#注释符。 3、支持无section或空section(名称为空)。 4、支持10、16、8进制数,0x开头为16进制数,0开头为8进制。 5、支持section...

    c#读写文件功能代码

    关于c#以流的方式,进行读写文件,其中包含了对字符串的一系列操作,分割,索引,判断等等

    一款很有用的Excel读写工具类

    亲测可用,代码简洁易懂,可以直接上手对Excel文件进行读写。应用于非MFC环境,对Excel中数字,字符串,日期,布尔型等多种数据都可以读写。

    Qt5对json文件的读和写代码

    通过Qt5完成对Json格式的文件的读写操作 Qt读写json中主要用到这几个类QJsonDocument、QJsonObject、QJsonArray、QJsonValue

    Python程序基础:文件读写.pptx

    文件读写;;按数据的组织形式不同,可以将文件分为文本文件和二进制文件两大类。 文本文件一般由单一特定编码的字符组成。 二进制文件直接由比特0和比特1组成。;Python对文本文件和二进制文件采用统一的操作步骤: ...

    读取文件数据并解析成不同数据类型,然后写入磁盘文件。附加功能:对字符串以逗号分割成字段,字段内含逗号

    1读取磁盘文件数据,并解析成对象,然后写入磁盘另一个文件 2读取文件数据并解析成不同数据类型,然后写入磁盘文件。附加功能:对字符串以逗号分割成字段,字段内含逗号

    基于ASCII码的文本编码和解码

    为了对文本进行编码,可以任意选择一个字符串,作为“编码字符串”。 假设编码字符串是“Walrus”,需要编码的文本是“Meet me in St. Louis”,则:我们在待编码的文本之上重复书写上述编码字符串,使得编码字符串...

    基于Linux字符设备驱动程序的设计与实现

    Linux 设备驱动程序是为特定的硬件提供给用户程序的 一组标准化接口,它隐藏了...来表示,也就是说,对设备文件的操作实质反映的是对设备 的操作。Linux 系统的设备分为3 种类型,分别是字符设备、 块设备和网络设备。

Global site tag (gtag.js) - Google Analytics