怎样在c++Dialog中输出txt文本

来源:百度知道 编辑:UC知道 时间:2024/05/27 23:58:34
已创建一个Dialog及Edit框,怎样让它读取一个txt文件,并使文本内容输出在该Edit框中呢?
我看到有说可以把文本赋给一个字符串的,但是那个文件很大,需要申请很大的空间,可以逐字读取,逐字输出吗?
不好意思,我是新手,多线程之类的不会.有没有简单点的函数可以直接实现.

在对话框dlg类的OnInitDialog函数里添加下面代码(给编辑框映射一个CString类型的变量m_EditBox,其中 H:\\readme.txt 是txt文件路径)
CFile fileEditText;
if(fileEditText.Open("H:\\readme.txt",CFile::modeRead))
{
char cBuf[512];
UINT uBytesRead;
while(uBytesRead=fileEditText.Read(cBuf,sizeof(cBuf)-1))
{
cBuf[uBytesRead]=NULL;
m_EditBox+=CString(cBuf);
}
fileEditText.Close();
UpdateData(FALSE);
}

你说的可以实现的, 开一个线程, 然后把窗口句柄传给这个线程, 在线程中循环读取文件内容(比如每4000个char一读), 每个循环后PostMessage这个读到的buffer给窗口, 回调函数中再对CEdit变量SetText()下.

映射到内存