#include <stdio.h>
int main(int argc, char* argv[])
{
FILE* fp = fopen("data.txt", "wb");
int n = 10;
float f = 123.4567;
fwrite(&n, 1, sizeof(n), fp);
fwrite(&f, 1, sizeof(f), fp);
fclose(fp);
n=0;
f=0;
fp = fopen("data.txt", "rb");
fread(&n, 1, sizeof(n), fp);
fread(&f, 1, sizeof(f), fp);
fclose(fp);
printf("n=%d, f=%f\n", n, f);
return 0;
}
代码出自http://topic.youkuaiyun.com/u/20081215/22/035b47ef-7eee-4647-9e53-8f71b1ff1730.html
我的代码粘贴如下,以供参考:
写文件:
CFileDialog FileDlg(FALSE,"txt",NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT);
FileDlg.m_ofn.lpstrInitialDir="桌面:\\";
if(FileDlg.DoModal()==IDOK)
{
//CStdioFile f( FileDlg.GetPathName(),CFile::modeCreate | CFile::modeWrite | CFile::typeText );
//f.WriteString( str );
FILE* fp = fopen(FileDlg.GetPathName(),"wb");
coor.m_Port[0]=0x61;//测试所有ab
coor.m_Port[1]=0x62;//测试所有ab
fwrite(&coor, 1, sizeof(coor), fp);//将coor内的数据保存为了二进制文件
//fwrite(&f, 1, sizeof(f), fp);
fclose(fp);
}
读文件:
CString szFilter=_T("Txt files(*.txt)|*.txt|Ini files(*.ini)|*.ini|All files(*.*)|*.*||");
CFileDialog dlg(TRUE,_T("txt"),NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,szFilter);
if(dlg.DoModal()==IDOK){
FILE* fp = fopen(dlg.GetPathName(), "rb");
fread(&coor, 1, sizeof(coor), fp);
fclose(fp);
}