MFC-按行读取TXT数据

Posted tang-tangt

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MFC-按行读取TXT数据相关的知识,希望对你有一定的参考价值。

 

TXT中数据格式如下:

1

23

4

0

4

10

……

 

要实现的功能是:定义一个函数,每次调用时从TXT文档中读一个整数 ,赋值给变量。同时,文件位置向下移动一行,以便下次调用时读取下一行的数据。

 

MFC主要读写文件的类是CFile,CStdioFile类是派生自CFile类的,主要增加了一个按行的方式读取/写入文件每行字符串的功能【读写TXT文件,写入和输出必须统一格式】。所以实现按行读取字符串用CStdioFile类。

 

代码:

void CMFCdemoDlg::getPersonCnt()
{
    CStdioFile file;
    CString strText=_T("");

    if (file.Open(_T("E:\count.txt"), CFile::modeRead))
    {
        
        file.Seek(pos, CFile::begin);

        if (file.ReadString(strText))
        {
            pos = file.GetPosition();//记录读到了哪一行;
            m_personCount = _ttoi(strText);
            SetDlgItemInt(IDC_PERSONCOUNT_EDIT,m_personCount);
        }
        else
        {
            SetDlgItemText(IDC_PERSONCOUNT_EDIT, _T("读入错误"));
        }
        file.Close();
    }

}

 

 注:pos(DWORD)与m_personCount(int)是对话框类的数据成员。

 

 

参考:https://bbs.csdn.net/topics/340105743

https://blog.csdn.net/zollll/article/details/54861253

 

 


以上是关于MFC-按行读取TXT数据的主要内容,如果未能解决你的问题,请参考以下文章

如何在MFC中读取txt文件中的数据

MFC如何读取TXT文件?

MFC怎么读取一个TXT文件

java 按行读取txt文件的数字

java按行读取txt文件并与数据库表中的内容进行匹配处理(问题好像比较复杂哈)

水文日常~~Python如何按行读取txt文件中的数据并去除每行末尾的回车符