请教:关于使用CStdioFile实现查找文本字符串和保存的问题
希望在一个指定的文本文件中查找某一个英文单词(比如city),并且保存含有此单词的行,然后输出到另一个文本文件中。以下是我的代码:
CString str;
CFileDialog fileDlg(TRUE);
fileDlg.m_ofn.lpstrTitle=L"Open Files";
fileDlg.m_ofn.lpstrFilter=L"Text Files(*.txt)\0*.txt\0All Files(*.*)\0*.*\0\0";
if(IDOK==fileDlg.DoModal())
{
g_FileName = fileDlg.GetFileName(); //g_FileName是全局变量,用来保存文件名称
}
以上是打开某个文本文件的操作
CStdioFile File;
if(!File.Open(g_FileName, CFile::modeCreate | CFile::modeRead))
{
return;
}
while(File.ReadString(m_str))
{
if( m_str.Find(L"City")!=-1)
{
m_Array.Add(m_str); //m_Array是CStringArray类型的变量,用于保存文本文件中符合条件的行。
}
}
以上是查找字符串并且保存的代码,可是执行后,原来的文本文件内容变为了空,并且好像没有能够执行if( m_str.Find(L"City")!=-1)的操作,请问是怎么回事啊。多谢了