如何用CStdioFile在文本文件中插入一行
TRY
{
CStdioFile f3( _T("c:\\test.txt"),
CFile::modeNoTruncate | CFile::modeWrite | CFile::modeRead )
f3.Seek(0, CFile::begin)//定位到文件开头
f3.WriteString(_T("111111111\n"))
f3.WriteString(_T("222222222\n"))
f3.Seek(0, CFile::end)//定位到文件末尾
f3.WriteString(_T("\nfffffffff\n"))
f3.Close()
}
CATCH( CFileException, e )
{
//异常处理
}
END_CATCH
使用CStdioFile打开文件,逐行读取,判断如果是空行,在读取后一行,并判断第一个数字是否是1,如果是,则直接读取后续的行,并存储,如果不是,直接读取后续行并舍弃。CStdioFile file
if (file.Open(sPath, CFile::Read))
{
CString sText, sLastLine
while (file.ReadString(sText))
{
if (sLastLine.IsEmpty() &&!sText.IsEmpty())
{
if (sText.Left(2) == _T("1 "))
{
... // 处理首行
while (file.ReadString(sText))
{
sLastLine = sText
if (sText.IsEmpty())
break
... // 存储数据
}
}
}
}
}
请采纳答案,支持我一下。
换行符 \n 在 Windows 记事本不会显示,用 Notepad2、Notepad++、UltraEdit 等打开就能看到,或者用 \r\n,或者按楼上所说去掉 CFile::typeBinary。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)