保存为文本文件,但开始位置却多出个字符 ÿ,好像是字符窜的大小, 请问怎么把这个字符去掉阿??
写文件的代码
 CString sRecord;
 CString defName;
 defName = L"会議記録.txt";
 GetDlgItem(IDC_EDIT_LIST)->GetWindowText(sRecord);  CFileDialog dlg(FALSE, NULL, defName, \
 OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, \
 NULL, NULL);  dlg.m_ofn.lpstrFilter = FILE_FILTER_TEXT;  intptr_t ir=dlg.DoModal();
 CString wjm = dlg.GetPathName();//ファイル全名を取る
 CFile file;
 if(ir=IDOK)
 {
 file.Open(wjm,CFile::modeCreate|CFile::modeWrite);
 CArchive ar(&file,CArchive::store);
 ar<<sRecord;
 sRecord.Empty();
 ar.Close();
 file.Close();
 }
 else{
 CDialog::OnCancel();
 }

解决方案 »

  1.   

    用 ar.Write(p, _tcslen(p));
      

  2.   

    ar.write()   是save字符数组的阿, 怎么把cstring转化为字符数组
      

  3.   

    ar.write (LPCTSTR str, str.GetLength());
      

  4.   

    谢谢,我用WriteString()写成功了。
      

  5.   

    虽然可以用WriteString(),但是如果字符窜 cstring包含汉字或是日文就乱码啦。ar<<sRecord用这个就可以,能写汉字,但是就是文件开头多出个字符。郁闷!