我有一个文本文件,里面内容如下:
1234666
4456456
5456464
5564588
.......
.......
是一条条无规则的数据.
现在我用CFileOpen对话框将它打开,但CfileOpen里面好像只有获得文件名,或是文件路径等函数.请问我要用什么控件或什么样的方法来得到文本里的每一条数据呢?然后存在一个数组里呢?
在线等!谢先!

解决方案 »

  1.   

    int dwLength = 0;
    TRY {
    pFile = new CStdioFile("你要读的文件名.txt",CFile::modeRead | CFile::shareDenyNone);
    dwLength = pFile->GetLength();
        }
    CATCH(CFileException, pEx) {
    pEx->ReportError();
        }
    END_CATCH


    if (pFile != NULL) {
             char tmp_buf[80];
    pFile->ReadString(tmp_buf, 80);
    int m_servernum = atoi(tmp_buf);
    for (int i = 0; i < m_servernum; i++) {//读出来后装在下拉框里面
    m_ComboServer.DeleteString(i);
    pFile->ReadString(tmp_buf, 80);
    m_ComboServer.InsertString(i, tmp_buf);
    pFile->ReadString(tmp_buf, 80);
    m_ComboServer.SetItemData(i, ntohl(inet_addr(tmp_buf)));
    }
    pFile->Close();
    delete pFile;
      

  2.   

    对了,pFile还要声明。CStdioFile* pFile = NULL;
      

  3.   

    使用 CStdioFile 进行操作
    CFileDialog 的任务只是选择文件获取一个文件名,
    而 CStdioFile 才是对文件进行操作的类
      

  4.   

    ntohl(inet_addr(tmp_buf)))
    这两个别函数是什么?
    谢谢你,大概方向我知道了!
      

  5.   

    TO rabo:
    m_servernum = atoi(tmp_buf);//这是什么?
    怎么获得文本记录的总条数?我看了一下,m_servernum是第一条数据的INT型的值,好像不是总条数呀?