多谢
解决方案 »
- ListView中添加图片
- 如何创建多个一样的非模态对话框?
- CWnd继承类的m_hWnd怎么是0
- .a后缀的文件是库文件吗?
- 【在线求救】Edit Box要实现下拉控制条要这么处理呢?
- 请前辈指点方向!关于考研还是就业!
- (:(:(:(:(: 关于CColorDialog的问题,大侠指点 :):):):):)
- 如何得到一个ttf文件的字体名(FaceName)?
- 学VC,不想被IDE所累!
- 提示错误Unhandled exception in test.exe(MFC42D.DLL)
- 当我想在dialog类中添加成员函数时,突然发现左边关于类的树型列表中没有对话类了。?
- local function definitions are illegal错误一般是什么造成的?
CFile myfile;
CString m_char,m_disp;
myfile.Open("documenta.txt",CFile::modeRead);
myfile.SeekToBegin();
myfile.Read(m_disp.GetBufferSetLength(myfile.GetLength()),myfile.GetLength());//写
m_char="读写INI示例";
myfile.WriteString(m_char);
myfile.SetLength(file.GetPosition());
myfile.Close();
建议使用"fstream.h"中的ifstream(读入)和ofstream(写)
#include "fstream.h"
#include "iostream.h"
void main()
{
ofstream outfile;//输出
outfile.open("out.txt");
int i=21;
float a=21.9f;
outfile<<i<<a<<endl;
outfile.close(); ifstream infile;//读入
file.open("test.txt");
int i;
float f;
infile>>i>>f;
infile.close();
cout<<i<<'\t'<<f<<endl;
}MFC CFile的用法:
//对文件进行读操作
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();
虽然这种方法最为基本,但是它的使用繁琐,而且功能非常简单。我向你推荐的是使用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();
CArchive的 << 和>> 操作符用于简单数据类型的读写,对于CObject派生类的对象的存取要使用ReadObject()和WriteObject()。使用CArchive的ReadClass()和WriteClass()还可以进行类的读写,如:
//存储CAboutDlg类
ar.WriteClass(RUNTIME_CLASS(CAboutDlg));
//读取CAboutDlg类
CRuntimeClass* mRunClass=ar.ReadClass();
//使用CAboutDlg类
CObject* pObject=mRunClass->CreateObject();
((CDialog* )pObject)->DoModal();