2024年3月9日发(作者:)
VC逐行读写文件(.TXT)
时间:
2010-02-05 16:22
来源:
未知
作者:
zzl
点击:
1973次
用流在写日志时,发现如果把"rn"直接写在字符串的尾部,则会造成乱码,其
中的原因网上有很多说明,主要是标准库与WINDOWS的回车换行的机制略有差
别。但只要写到另一行重起就没有
用流在写日志时,发现如果把"rn"直接写在字符串的尾部,则会造成乱码,其
中的原因网上有很多说明,主要是标准库与WINDOWS的回车换行的机制略有差
别。但只要写到另一行重起就没有问题了。
/********************************************************************
*********
* 写入日志文件-C++标准版(UNICODE)
* 函 数 名:WriteLogTxt
* 功 能 写入日志
* 说 明:
* 参 数:
* 创 建 人:fjf
* 创建时间:2009-09-10
* 修 改 人:
* 修改时间:
*********************************************************************
********/
bool CConLog::WriteLogTxt(CString time, CString value)
{
//定义写入字符数组
CString tmp = time + value;
//定义输出流
ofstream oFile;
(m_fer(MAX_PATH),ios::app|ios::binary);
(0,ios::end);//回到文件末尾
//写入文件流
if (_open())
{
//下面蓝色部分解决了CHAR[]写入的问题,不用再做拷贝了,增加了安全性
(fer(gth()), gth());
(_T("rn"), 2); //写在一起会产生乱码
}
else
{
();
return false;
}
();
return true;
}
/********************************************************************
*********
* 写入日志文件
* 函 数 名:WriteLogTxt
* 功 能 写入日志
* 说 明:
* 参 数:
* 创 建 人:fjf
* 创建时间:2009-09-09
* 修 改 人:
* 修改时间:
*********************************************************************
********/
bool CConLog::WriteLogTxt(CString key, CString time, CString value)
{
//读写文件全名
if (m_sFullName == _T(""))
{
AfxMessageBox("请设置日志保存路径!");
return FALSE;
}
//操作文件
try
{
this->m_(m_sFullName,CFile::modeCreate |
CFile::modeNoTruncate | CFile::modeWrite);
m_End();
this->m_tring(time + _T("rn"));
this->m_tring(value + _T("rn"));
this->m_();
}
catch (CFileException &e)
{


发布评论