17 个解决方案
#1
写
CFile cfile;
cfile.Open(_T("Write_File.dat"), CFile::modeCreate |
CFile::modeReadWrite);
char pbufWrite[100];
memset(pbufWrite, 'a', sizeof(pbufWrite));
cfile.Write(pbufWrite, 100);
cfile.Flush();
读
CFile cfile;
cfile.Open(_T("Write_File.dat"), CFile::modeCreate |
CFile::modeReadWrite);
char pbufWrite[100];
memset(pbufWrite, 'a', sizeof(pbufWrite));
cfile.Write(pbufWrite, 100);
cfile.Flush();
cfile.SeekToBegin();
char pbufRead[100];
cfile.Read(pbufRead, sizeof(pbufRead));
ASSERT(0 == memcmp(pbufWrite, pbufRead, sizeof(pbufWrite)));
CFile cfile;
cfile.Open(_T("Write_File.dat"), CFile::modeCreate |
CFile::modeReadWrite);
char pbufWrite[100];
memset(pbufWrite, 'a', sizeof(pbufWrite));
cfile.Write(pbufWrite, 100);
cfile.Flush();
读
CFile cfile;
cfile.Open(_T("Write_File.dat"), CFile::modeCreate |
CFile::modeReadWrite);
char pbufWrite[100];
memset(pbufWrite, 'a', sizeof(pbufWrite));
cfile.Write(pbufWrite, 100);
cfile.Flush();
cfile.SeekToBegin();
char pbufRead[100];
cfile.Read(pbufRead, sizeof(pbufRead));
ASSERT(0 == memcmp(pbufWrite, pbufRead, sizeof(pbufWrite)));
#2
CFile::Open/Read/Write/Close()
具体请参考MSDN文档CFile类的用法,应该也有不少例子代码可以参考的
具体请参考MSDN文档CFile类的用法,应该也有不少例子代码可以参考的
#3
//读操作
char sRead[2];
CFile mFile(L"user.txt",CFile::modeRead);
if(mFile.GetLength()<2)
return;
mFile.Read(sRead,2);
mFile.Close();
//文件写操作
//CFile mFile(L"user.txt");
mFile.Write(sRead,2);
mFile.Flush ();
mFile.Close();
这是我现在写的,但是为什么显示没有找到user.txt
char sRead[2];
CFile mFile(L"user.txt",CFile::modeRead);
if(mFile.GetLength()<2)
return;
mFile.Read(sRead,2);
mFile.Close();
//文件写操作
//CFile mFile(L"user.txt");
mFile.Write(sRead,2);
mFile.Flush ();
mFile.Close();
这是我现在写的,但是为什么显示没有找到user.txt
#4
tet文件放置在随便哪个位置都可以吗?
#5
如果不加路径,则是exe的当前目录
#6
引用 5楼 的回复:
//读操作
char sRead[2];
CFile mFile(L"user.txt",CFile::modeRead);
if(mFile.GetLength()<2)
return;
mFile.Read(sRead,2);
mFile.Close();
//文件写操作
//CFile mFile(L"user.txt");
mFile.Write(sRead,2);
mFile.Flush ();
mFile.Close();
这是我现在写的,但是为什么显示没有找到user.txt
//读操作
char sRead[2];
CFile mFile(L"user.txt",CFile::modeRead);
if(mFile.GetLength()<2)
return;
mFile.Read(sRead,2);
mFile.Close();
//文件写操作
//CFile mFile(L"user.txt");
mFile.Write(sRead,2);
mFile.Flush ();
mFile.Close();
这是我现在写的,但是为什么显示没有找到user.txt
#7
你工程目录下有没有自己建一个user.txt?
另外,你确定你的工程是unicode字符吧?
#8
引用 7 楼 的回复:
你工程目录下有没有自己建一个user.txt?
另外,你确定你的工程是unicode字符吧?
我在mfc,单文档下建立的,unicode什么意思?本人初学,不是很明白.
你工程目录下有没有自己建一个user.txt?
另外,你确定你的工程是unicode字符吧?
我在mfc,单文档下建立的,unicode什么意思?本人初学,不是很明白.
#9
还是把L"user.txt" 改成_T("user.txt")
这里的CFile是只读,因此需要你自己先建立一个user.txt的文档,扩展名也必须相同,而且要在你工程目录下
这里的CFile是只读,因此需要你自己先建立一个user.txt的文档,扩展名也必须相同,而且要在你工程目录下
#10
还是把L"user.txt" 改成_T("user.txt")
这里的CFile是只读,因此需要你自己先建立一个user.txt的文档,扩展名也必须相同,而且要在你工程目录下
这里的CFile是只读,因此需要你自己先建立一个user.txt的文档,扩展名也必须相同,而且要在你工程目录下
#11
"要在你工程目录下"不是随便建立一个user.txt在桌面就可以吗?
#12
不是...
呃,或者说也是。如果随便建一个的话,就把路径传给CFile构造函数的第一个参数
#13
引用 11 楼 的回复
那具体在
char sRead[2];
CFile mFile(L"user.txt",CFile::modeRead);
if(mFile.GetLength()<2
return;
mFile.Read(sRead,2);
mFile.Close();
//文件写操作
//CFile mFile(L"user.txt");
mFile.Write(sRead,2);
mFile.Flush ();
mFile.Close();
如何修改?还是怎么搞?还是不能明白.
那具体在
char sRead[2];
CFile mFile(L"user.txt",CFile::modeRead);
if(mFile.GetLength()<2
return;
mFile.Read(sRead,2);
mFile.Close();
//文件写操作
//CFile mFile(L"user.txt");
mFile.Write(sRead,2);
mFile.Flush ();
mFile.Close();
如何修改?还是怎么搞?还是不能明白.
#14
char sRead[2];
CFile mFile(_T("C:\\Users\\Administrator\\Desktop\\user.txt"),CFile::modeRead);
if(mFile.GetLength()<2
return;
mFile.Read(sRead,2);
mFile.Close();
//文件写操作
//CFile mFile(_T("C:\\Users\\Administrator\\Desktop\\user.txt");
mFile.Write(sRead,2);
mFile.Flush ();
mFile.Close();
WIN7系统,administrator,user.txt放到桌面上
或者你的代码不要变,把user.txt放到工程目录下
CFile mFile(_T("C:\\Users\\Administrator\\Desktop\\user.txt"),CFile::modeRead);
if(mFile.GetLength()<2
return;
mFile.Read(sRead,2);
mFile.Close();
//文件写操作
//CFile mFile(_T("C:\\Users\\Administrator\\Desktop\\user.txt");
mFile.Write(sRead,2);
mFile.Flush ();
mFile.Close();
WIN7系统,administrator,user.txt放到桌面上
或者你的代码不要变,把user.txt放到工程目录下
#15
CFile类
//创建/打开文件
CFile file;
file.Open (_T("test.txt"),CFile::modeCreate | CFile::modeNoTruncate | CFile::modeReadWrite);
文件打开模式可组合使用,用“|”隔开,常用的有以下几种:
CFile::modeCreate:以新建方式打开,如果文件不存在,新建; 如果文件已存在,把该文件长度置零,即清除文件原有内容。
CFile::modeNoTruncate:以追加方式打开,如果文件存在,打开并且 不将文件长度置零,如果文件不存在,会抛出异常。一般与CFile::modeCreate一起使用,则文件不存在时,新建一个文件;存在就进行追加操 作。
CFile::modeReadWrite:以读写方式打开文件。
CFile::modeRead:只读。
CFile::modeWrite: 只写。
//写入数据
CString strValue = "Hello World!";
file.Write(strValue, strValue.GetLength() );
//追加数据
file.SeekToEnd(); //将指针移至文件末尾进行追加
file.Write(strValue, strValue.GetLength());
file.Close();
#16
//对文件进行读操作
char sRead[2];
CFile mFile( _T("user.txt"), CFile::modeRead );
if(mFile.GetLength()<2)
return;
mFile.Read(sRead,2);
mFile.Close();
//对文件进行写操作
CFile mFile(_T("user.txt "), CFile::modeWrite|CFile::modeCreate);
mFile.Write(sRead,2);
mFile.Flush();
mFile.Close();
#17
虽然上面的方法最为基本,但是它的使用繁琐,而且功能非常简单。我向你推荐的是使用CArchive,它的使用方法简单且功能十分强大。首先还是用CFile声明一个对象,然后用这个对象的指针做参数声明一个 CArchive对象,你就可以非常方便地存储各种复杂的数据类型了。它的使用方法见下例。
//对文件进行写操作
CString strTemp;
CFile mFile;
mFile.Open("d:\\dd\\try.TRY",CFile::modeCreate|CFile::modeNoTruncate|CFile::modeWrite);
CArchive ar(&mFile,CArchive::store);
ar<<ar.Close();
mFile.Close();
//对文件进行读操作
CFile mFile;
if(mFile.Open("d:\\dd\\try.TRY",CFile::modeRead)==0)
return;
CArchive ar(&mFile,CArchive::load);
ar>>strTemp;
ar.Close();
mFile.Close();
#1
写
CFile cfile;
cfile.Open(_T("Write_File.dat"), CFile::modeCreate |
CFile::modeReadWrite);
char pbufWrite[100];
memset(pbufWrite, 'a', sizeof(pbufWrite));
cfile.Write(pbufWrite, 100);
cfile.Flush();
读
CFile cfile;
cfile.Open(_T("Write_File.dat"), CFile::modeCreate |
CFile::modeReadWrite);
char pbufWrite[100];
memset(pbufWrite, 'a', sizeof(pbufWrite));
cfile.Write(pbufWrite, 100);
cfile.Flush();
cfile.SeekToBegin();
char pbufRead[100];
cfile.Read(pbufRead, sizeof(pbufRead));
ASSERT(0 == memcmp(pbufWrite, pbufRead, sizeof(pbufWrite)));
CFile cfile;
cfile.Open(_T("Write_File.dat"), CFile::modeCreate |
CFile::modeReadWrite);
char pbufWrite[100];
memset(pbufWrite, 'a', sizeof(pbufWrite));
cfile.Write(pbufWrite, 100);
cfile.Flush();
读
CFile cfile;
cfile.Open(_T("Write_File.dat"), CFile::modeCreate |
CFile::modeReadWrite);
char pbufWrite[100];
memset(pbufWrite, 'a', sizeof(pbufWrite));
cfile.Write(pbufWrite, 100);
cfile.Flush();
cfile.SeekToBegin();
char pbufRead[100];
cfile.Read(pbufRead, sizeof(pbufRead));
ASSERT(0 == memcmp(pbufWrite, pbufRead, sizeof(pbufWrite)));
#2
CFile::Open/Read/Write/Close()
具体请参考MSDN文档CFile类的用法,应该也有不少例子代码可以参考的
具体请参考MSDN文档CFile类的用法,应该也有不少例子代码可以参考的
#3
//读操作
char sRead[2];
CFile mFile(L"user.txt",CFile::modeRead);
if(mFile.GetLength()<2)
return;
mFile.Read(sRead,2);
mFile.Close();
//文件写操作
//CFile mFile(L"user.txt");
mFile.Write(sRead,2);
mFile.Flush ();
mFile.Close();
这是我现在写的,但是为什么显示没有找到user.txt
char sRead[2];
CFile mFile(L"user.txt",CFile::modeRead);
if(mFile.GetLength()<2)
return;
mFile.Read(sRead,2);
mFile.Close();
//文件写操作
//CFile mFile(L"user.txt");
mFile.Write(sRead,2);
mFile.Flush ();
mFile.Close();
这是我现在写的,但是为什么显示没有找到user.txt
#4
tet文件放置在随便哪个位置都可以吗?
#5
如果不加路径,则是exe的当前目录
#6
引用 5楼 的回复:
//读操作
char sRead[2];
CFile mFile(L"user.txt",CFile::modeRead);
if(mFile.GetLength()<2)
return;
mFile.Read(sRead,2);
mFile.Close();
//文件写操作
//CFile mFile(L"user.txt");
mFile.Write(sRead,2);
mFile.Flush ();
mFile.Close();
这是我现在写的,但是为什么显示没有找到user.txt
//读操作
char sRead[2];
CFile mFile(L"user.txt",CFile::modeRead);
if(mFile.GetLength()<2)
return;
mFile.Read(sRead,2);
mFile.Close();
//文件写操作
//CFile mFile(L"user.txt");
mFile.Write(sRead,2);
mFile.Flush ();
mFile.Close();
这是我现在写的,但是为什么显示没有找到user.txt
#7
你工程目录下有没有自己建一个user.txt?
另外,你确定你的工程是unicode字符吧?
#8
引用 7 楼 的回复:
你工程目录下有没有自己建一个user.txt?
另外,你确定你的工程是unicode字符吧?
我在mfc,单文档下建立的,unicode什么意思?本人初学,不是很明白.
你工程目录下有没有自己建一个user.txt?
另外,你确定你的工程是unicode字符吧?
我在mfc,单文档下建立的,unicode什么意思?本人初学,不是很明白.
#9
还是把L"user.txt" 改成_T("user.txt")
这里的CFile是只读,因此需要你自己先建立一个user.txt的文档,扩展名也必须相同,而且要在你工程目录下
这里的CFile是只读,因此需要你自己先建立一个user.txt的文档,扩展名也必须相同,而且要在你工程目录下
#10
还是把L"user.txt" 改成_T("user.txt")
这里的CFile是只读,因此需要你自己先建立一个user.txt的文档,扩展名也必须相同,而且要在你工程目录下
这里的CFile是只读,因此需要你自己先建立一个user.txt的文档,扩展名也必须相同,而且要在你工程目录下
#11
"要在你工程目录下"不是随便建立一个user.txt在桌面就可以吗?
#12
不是...
呃,或者说也是。如果随便建一个的话,就把路径传给CFile构造函数的第一个参数
#13
引用 11 楼 的回复
那具体在
char sRead[2];
CFile mFile(L"user.txt",CFile::modeRead);
if(mFile.GetLength()<2
return;
mFile.Read(sRead,2);
mFile.Close();
//文件写操作
//CFile mFile(L"user.txt");
mFile.Write(sRead,2);
mFile.Flush ();
mFile.Close();
如何修改?还是怎么搞?还是不能明白.
那具体在
char sRead[2];
CFile mFile(L"user.txt",CFile::modeRead);
if(mFile.GetLength()<2
return;
mFile.Read(sRead,2);
mFile.Close();
//文件写操作
//CFile mFile(L"user.txt");
mFile.Write(sRead,2);
mFile.Flush ();
mFile.Close();
如何修改?还是怎么搞?还是不能明白.
#14
char sRead[2];
CFile mFile(_T("C:\\Users\\Administrator\\Desktop\\user.txt"),CFile::modeRead);
if(mFile.GetLength()<2
return;
mFile.Read(sRead,2);
mFile.Close();
//文件写操作
//CFile mFile(_T("C:\\Users\\Administrator\\Desktop\\user.txt");
mFile.Write(sRead,2);
mFile.Flush ();
mFile.Close();
WIN7系统,administrator,user.txt放到桌面上
或者你的代码不要变,把user.txt放到工程目录下
CFile mFile(_T("C:\\Users\\Administrator\\Desktop\\user.txt"),CFile::modeRead);
if(mFile.GetLength()<2
return;
mFile.Read(sRead,2);
mFile.Close();
//文件写操作
//CFile mFile(_T("C:\\Users\\Administrator\\Desktop\\user.txt");
mFile.Write(sRead,2);
mFile.Flush ();
mFile.Close();
WIN7系统,administrator,user.txt放到桌面上
或者你的代码不要变,把user.txt放到工程目录下
#15
CFile类
//创建/打开文件
CFile file;
file.Open (_T("test.txt"),CFile::modeCreate | CFile::modeNoTruncate | CFile::modeReadWrite);
文件打开模式可组合使用,用“|”隔开,常用的有以下几种:
CFile::modeCreate:以新建方式打开,如果文件不存在,新建; 如果文件已存在,把该文件长度置零,即清除文件原有内容。
CFile::modeNoTruncate:以追加方式打开,如果文件存在,打开并且 不将文件长度置零,如果文件不存在,会抛出异常。一般与CFile::modeCreate一起使用,则文件不存在时,新建一个文件;存在就进行追加操 作。
CFile::modeReadWrite:以读写方式打开文件。
CFile::modeRead:只读。
CFile::modeWrite: 只写。
//写入数据
CString strValue = "Hello World!";
file.Write(strValue, strValue.GetLength() );
//追加数据
file.SeekToEnd(); //将指针移至文件末尾进行追加
file.Write(strValue, strValue.GetLength());
file.Close();
#16
//对文件进行读操作
char sRead[2];
CFile mFile( _T("user.txt"), CFile::modeRead );
if(mFile.GetLength()<2)
return;
mFile.Read(sRead,2);
mFile.Close();
//对文件进行写操作
CFile mFile(_T("user.txt "), CFile::modeWrite|CFile::modeCreate);
mFile.Write(sRead,2);
mFile.Flush();
mFile.Close();
#17
虽然上面的方法最为基本,但是它的使用繁琐,而且功能非常简单。我向你推荐的是使用CArchive,它的使用方法简单且功能十分强大。首先还是用CFile声明一个对象,然后用这个对象的指针做参数声明一个 CArchive对象,你就可以非常方便地存储各种复杂的数据类型了。它的使用方法见下例。
//对文件进行写操作
CString strTemp;
CFile mFile;
mFile.Open("d:\\dd\\try.TRY",CFile::modeCreate|CFile::modeNoTruncate|CFile::modeWrite);
CArchive ar(&mFile,CArchive::store);
ar<<ar.Close();
mFile.Close();
//对文件进行读操作
CFile mFile;
if(mFile.Open("d:\\dd\\try.TRY",CFile::modeRead)==0)
return;
CArchive ar(&mFile,CArchive::load);
ar>>strTemp;
ar.Close();
mFile.Close();