CFile tmpFile;
ULONGLONG fileLen;
tmpFile.Open(pTempCDRomPathW,CFile::modeRead);
fileLen=tmpFile.GetLength(); //获取file文件中内容的长度;
tmpFile.SeekToBegin(); //到达文件开头
BYTE *data =NULL;
data =new BYTE[fileLen+1];//定义一个存放数据的指针;
memset(data ,0,fileLen+1);// 将已开辟内存空间 data的,长度为len+1首 个字节的值设为值 0
tmpFile.Read(data,fileLen);//读取文件内容并赋值给data;
CFile fileEx(_T("f://023367xx.txt"),CFile::modeCreate|CFile::modeWrite);
fileEx.SeekToBegin(); //到达文件开头
fileEx.Write(data,fileLen); //写入实际数据
fileEx.Close(); //关闭文件
delete [] data;
下面判断文件是否存在:
BOOL IsFileExist(LPCTSTR lpFileName)
{
if(lpFileName==NULL)
return FALSE;
BOOL bExist = TRUE;
HANDLE hFind;
WIN32_FIND_DATA dataFind;
hFind=FindFirstFile(lpFileName,&dataFind);
if(hFind == INVALID_HANDLE_VALUE)
bExist=FALSE;
FindClose(hFind);
return bExist;
}
另外一种操作文件的方法,逐行处理数据:
#include <fstream>
using namespace std;
char pName[100];
char pVersion[5];
int lineLength = 200;
char *buffer = new char[lineLength];
BOOL TestFunc(void)
{
wchar_t pTempCDRomPathW[100];
char pTempCDRomPath[100];
sprintf(pTempCDRomPath,"%s\\SYSTEM.CNF",pCDRomPath);
c2w(pTempCDRomPathW,100,pTempCDRomPath);
if( TRUE == IsFileExist(pTempCDRomPathW))
{
#define VERSION_LEN 4
fstream fs( pTempCDRomPath, ios::in );
if( fs!= NULL )
{
char *p=NULL;
char *q=NULL;
int j=0;
while(fs.getline(buffer,lineLength))
{
++j;
if(1==j) // get name.
{
p=strchr(buffer,'\\');
q=strchr(buffer,';');
if(p&&q)
{
strncpy(pName,p+1,q-p-1);
}
p=q=NULL;
}else if (2==j) // get version
{
p=strchr(buffer,'=');
strncpy(pVersion,p+2,VERSION_LEN);
p=q=NULL;
}
//printf("buffer === %s \n",buffer);
}
fs.close();
}
}
}
分享到:
相关推荐
自己搜集的几款C++ 编写的日志类 写入文件到文件中, 分别有 CFile fstream 类的用法
一个很好的源码,有关VC中CFILE的,这是一个被重写的控件。希望大家喜欢
解读VC++编程中的文件操作API和CFile类 通过此文件,可以更好地了解CFile类
CFile类编程 CFile类编程 CFile类编程 本文档仅是word文档,仅供初级学者参考
关于vc cfile的使用说明 下下下下下下 呵呵呵 呵呵额呵呵
解读VC++编程中的文件操作API和CFile类.doc
MFC-CFile文件操作 相关操作
摘要:VC/C++源码,文件操作,cfile64 运行环境:Windows/Visual C/C++
mfc文件操作类CFile CFile类的几种构造函数 CFile();//不带参数的构造函数。 CFile(int hFile);//带文件句柄参数的构造函数。 CFile( LPCTSTR lpszFileName,//要打开的文件路径 UINT ...
用CFile类简单读写文件
VC MFC文件读写操作的范例源码,本示例中涉及到CStdioFile写文件、CFile读写文件 、CFileFind、Shell操作。通过菜单可选择对应操作的执行结果,可比较一下与传统的文件操作有何不同。 lpbi->pszDisplayName=NULL; ...
Vc下读取txt文件 普通大小的一般用fread就可以了,但是遇到大容量的文本文件会有读取错误的现象,那该怎么办呢?本程序是用MFC的CFile类解决的 经过测试没有问题
各种关于文件的操作在程序设计中是十分常见,如果能对其各种操作都了如指掌,就可以根据实际情况找到最佳的解决方案,从而在较短的时间内编写出高效的代码,因而熟练的掌握文件操作是十分重要的。本文将对Visual C++...
涉及 VC文件操作的实现方法: ◎FILE指针 ◎文件流类 ◎MFC CFile类及其派生类 ◎串行化/序列化 PPT课件形式,较全面
简单的文件读写代码,适合初学者学习,在VC6.0下编译。
解读VC++编程中的文件操作API和CFile类,VC项目开发
利用CFile类实现文件的读操作,利用文件流fStream类实现文件的写操作。可实现文件的编辑保存和读取功能。
VC 文件串行化示例,源代码下载,涉及到的知识点:C语言对文件读写的支持,FILE指针;文本文件和二进制文件的区别。用文本方式读写文件和以二进制方式读写文件的注意事项。C 对文件读写的支持,ofstream和ifstream的...
1.Linux下文件句柄方式,写二进制文件时一定要用O_BINARY 2.CFile,MFC封装的形式,不区分二进制或者文本文件方式读写 3.FILE,文件指针形式,写二进制文件时一定要用wb