vc++文件读取
发布网友
发布时间:2022-05-25 14:31
我来回答
共3个回答
热心网友
时间:2023-11-04 19:51
把第一行和第二行相加就行了. 都是CString类型的
热心网友
时间:2023-11-04 19:51
用CStdioFile类,它有一个成员函数叫ReadString,直接读取文本文件中的一行字符串
CStdioFile::ReadString(LPTSTR lpsz, UINT nMax);
CStdioFile::ReadString(CString &rString);
读取一行文本到缓冲区,遇到“0x0D,0x0A”时停止读取,并且去掉硬回车“0x0D”,保留换行符“0x0A”,在字符串末尾添加“\0”(0x00)。nMax个字符里包含0x00这个字符
把一行字符串读到CString中之后,可以利用CString类强大的字符处理功能对字符串进行处理了
热心网友
时间:2023-11-04 19:52
定义CStdioFile类,然后用成员函数Open(LPCTSTR lpszFileName, UINT nOpenFlags,CFileException* pError = NULL)打开指定的文件。可以定义一个叫字符串数组的变量CStringArray,将读取文件的每行都存入此变量中,方便取用。利用CStdioFile类的ReadString(CString &rString)函数读取每行添加到CStringArray中。具体如下:
CStdioFile fstdF;
if (TRUE != fstdFSource.Open(FilePath,CFile::modeReadWrite|CFile::typeText))
{ return;
}
CString strSourceLine;
CStringArray m_strFileArry;
while (TRUE == fstdF.ReadString(strSourceLine))
{
strSourceLine.TrimRight(' ');
strSourceLine.TrimLeft(' ');
if (strSourceLine == "")
{
continue;
}
if(strSourceLine=="RAPID")
{
fstdF.ReadString(strSourceLine);
strSourceLine="RAPID"+strSourceLine;
}
m_strFileArry.Add(strSourceLine);
}
fstdFSource.Close();
要用每一行的时候,直接用CStringArray::GetAt(int nIndex)读取某行即可!