mfc一个按钮功能为读取txt中的数据,并在编辑框显示,请问代码怎么写

2024-12-04 10:40:33
推荐回答(3个)
回答1:

看你界面都弄出来了,基础的代码应该都清楚,只告诉你方法。

  1. 从txt中读取数据你应该会,按行读,getline函数挺好用,分别存储到5个自己定义的变量中。

  2. 关于显示到编辑框中,就有好多方式了。1)最简单的一种是利用classwizard,给每个编辑框定义一个CString型的成员变量。将从txt中读取的数据赋值给编辑框的成员变量,然后调用UpdateData(FALSE); 2)第二种方法也类似,利用classwizard给每个编辑框定义一个CEdit类型的成员变量,调用各变量的SetWindowText函数,完成显示。 3)第三种方法稍微复杂一些,就是记住每个编辑框的资源ID,然后利用GetDlgItem函数取得每个编辑框的窗口指针,然后使用指针调用SetWindowText函数来完成显示(SetWindowText的参数用读取的数据即可)。

    怎么样?够清楚了吧。

回答2:

读取到字符串里面再进行分析,特点是每一行都有回车换行符,每一行里面每个数据间都有空格.

回答3:

CString strLine, strTemp, result;
int row = 0;
CString filename = L"111.txt";
CStdioFile file(L"111.txt", CFile::modeRead);

while (file.ReadString(strLine))
{
char *str = (char *)strLine.GetBufferSetLength(strLine.GetLength());
if (strLine != "")
{
result += _T("\r\n") + strLine;
GetDlgItem(IDC_Edit_SO2)->SetWindowText(result);
// GetDlgItem(IDC_Edit_SO2)->UpdateWindow();
//m_Edit_SO2.LineScroll(m_Edit_SO2.GetLineCount(), 0);
m_Edit_SO2.SendMessage(WM_VSCROLL, SB_BOTTOM, 0);
row++;

}
}
file.Close();
这个可以实现一行一行的读取,读取的txt文档每行都有空格,你试一下,或参考http://blog.csdn.net/wgf5845201314/article/details/78182861很详细的