CStdioFile file;
if (!file.Open(_T("d:\\file.txt"),CFile::modeReadWrite))
{
file.Open(_T("d:\\file.txt"),CFile::modeCreate|CFile::modeReadWrite);
}
CString str;
CTime time=CTime::GetCurrentTime();
//str.Format(_T("%d-%-d-%-d %d:%-d:%-d 记录:"),time.GetYear(),time.GetMonth(),time.GetDay(),time.GetHour(),time.GetMinute(),time.GetSecond());
//str字符串以\0结尾,也就是说最后还有一个字节没显示出来但却存在,str.getlenth()不算最后那个\0;
WORD num=WideCharToMultiByte(CP_ACP,NULL,str,-1,NULL,0,NULL,FALSE);
char *p=new char[num];
memset(p,0,num);
WideCharToMultiByte(CP_ACP,NULL,str,-1,p,num,NULL,FALSE);
file.Write(p,strlen(p));
file.SeekToEnd();
file.Write("\n",1);//一个换行符\n,写的时候用的asci码,换行用一个字节;但是读的时候,file.getlenth()将换行解释成两个字节;
file.SeekToEnd();
file.Write("好",strlen("好"));
file.Close();
if (!file.Open(_T("d:\\file.txt"),CFile::modeReadWrite))
{
file.Open(_T("d:\\file.txt"),CFile::modeCreate|CFile::modeReadWrite);
}
char *q;
q=new char[file.GetLength()+1];
memset(q,0,file.GetLength()+1);
file.Read(q,file.GetLength());//read的第二个参数中规定,回车换行算一个字符,往read的第一个参数填写时,换行填写一个char[]的字节;
CString a(q);
delete q;
MessageBox(a);
file.Close();
if (!file.Open(_T("d:\\file.txt"),CFile::modeReadWrite))
{
file.Open(_T("d:\\file.txt"),CFile::modeCreate|CFile::modeReadWrite);
}
CString str;
CTime time=CTime::GetCurrentTime();
//str.Format(_T("%d-%-d-%-d %d:%-d:%-d 记录:"),time.GetYear(),time.GetMonth(),time.GetDay(),time.GetHour(),time.GetMinute(),time.GetSecond());
//str字符串以\0结尾,也就是说最后还有一个字节没显示出来但却存在,str.getlenth()不算最后那个\0;
WORD num=WideCharToMultiByte(CP_ACP,NULL,str,-1,NULL,0,NULL,FALSE);
char *p=new char[num];
memset(p,0,num);
WideCharToMultiByte(CP_ACP,NULL,str,-1,p,num,NULL,FALSE);
file.Write(p,strlen(p));
file.SeekToEnd();
file.Write("\n",1);//一个换行符\n,写的时候用的asci码,换行用一个字节;但是读的时候,file.getlenth()将换行解释成两个字节;
file.SeekToEnd();
file.Write("好",strlen("好"));
file.Close();
if (!file.Open(_T("d:\\file.txt"),CFile::modeReadWrite))
{
file.Open(_T("d:\\file.txt"),CFile::modeCreate|CFile::modeReadWrite);
}
char *q;
q=new char[file.GetLength()+1];
memset(q,0,file.GetLength()+1);
file.Read(q,file.GetLength());//read的第二个参数中规定,回车换行算一个字符,往read的第一个参数填写时,换行填写一个char[]的字节;
CString a(q);
delete q;
MessageBox(a);
file.Close();