CStdioFile f1;
TCHAR str[MAX_PATH];
GetCurrentDirectory(MAX_PATH,str);
strcat(str, _T("\\a.txt"));
f1.Open(str, CFile::modeCreate | CFile::modeWrite ); 
CArchive archive(&f1, CArchive::store);
archive<<"abc";
archive.Close();
f1.Close();
f1.Open(str, CFile::modeRead);
f1.SeekToBegin();
CArchive archive2(&f1, CArchive::load);
CString s;
archive2>>s;
archive2.Close();
f1.Close();出错提示为
“试图越过其尾断对一个未命名的文件进行读写”

解决方案 »

  1.   

    我用的是VC6.0 ,没有问题的.
    CStdioFile f1;
    TCHAR str[MAX_PATH];
    GetCurrentDirectory(MAX_PATH,str);
    strcat(str, _T("\\a.txt"));
    f1.Open(str, CFile::modeCreate | CFile::modeWrite ); 
    CArchive archive(&f1, CArchive::store);
    CString s1 = "a1111bc";//如不定义成变量,编辑不过去.
    archive << s1;
    archive.Close();
    f1.Close();
    f1.Open(str, CFile::modeRead);
    f1.SeekToBegin();
    CArchive archive2(&f1, CArchive::load);
    CString s;
    archive2 >> s;
    archive2.Close();
    f1.Close();
    MessageBox(s);
      

  2.   

    用楼上的可以
    就可这里的问题 CString s1 = "a1111bc";//如不定义成变量,编辑不过去.
    我用 CString s1 = "abcd";
    但是 a.txt文件中内容是  abcd
    字母 a前有一个“|”,不知道是什么回事
      

  3.   

    叉鳞&#24212;&#35813;困机射耳弄&#38271;刨&#21543;. 辞&#20320;弄罢蛔攻据困妥&#35760;&#24405;毗办肖矢塑矢凤面,&#36825;&#26679;弄&#35805;蝗脱CArchive&#31867;攻据铜爬&#38382;&#39064;,傍&#20026;锗笆润矢塑矢凤呈及&#35760;&#24405;.