请教各位:如下,在txt中有以下内容:
20060503,1,2,3
20060504,20,18,22
.....请问我如何可以确定txt中有多少行数据,每行数据想取指定的值怎么取?还有就是如何在最后再插入一行写新的数据,请给我一点源代码!!!!
万分感谢

解决方案 »

  1.   

    CStdioFile::ReadString  读取一行。。 CStdioFile file; if( !file.Open("c:\\1.txt", CFile::modeRead) ) { AfxMessageBox("can not open file!"); return; } CString strLine, strEdit;
            int  nLineCount = 0; while(file.ReadString(strLine)) {
                nLineCount++;
             }
    每行数据想取指定的值怎么取?
    ==================
    读取一行内容后,自己解析
    还有就是如何在最后再插入一行写新的数据,请给我一点源代码!!!!
    ============================================
    移动文件指针到最后,然后写数据
    file.SeekToEnd();
    file.WriteString(...);
      

  2.   

    int GetLineCount(LPCTSTR pszFileName)
    {
    int count = 0; CStdioFile file(pszFileName, CFile::modeRead);
    CString strLine;
    while(file.ReadString(strLine))
    {
    count++;
    }
    file.Close(); return count;
    }void AppendLine(LPCTSTR pszFileName, LPCTSTR pszLine)
    {
    CStdioFile file(pszFileName, CFile::modeCreate || CFile::modeNoTruncate);
    file.Seek(file.GetLength(), CFile::begin);
    CString strLine = _T("\r\n");
    strLine += pszLine;
    file.WriteString(strLine);
    file.Close();
    }
      

  3.   


    CStdioFile::ReadString可以读取一行信息(以换行符为标志)
    按照上面几位所说的方法,是可以正确得到想要的数据的
    我想说的是用CSV文件代替TXT文件会更好,
    因为CSV文件是标准的逗号分隔符文件