qq_56975267 2021-07-23 22:22 采纳率: 94.7%
浏览 54
已结题

mfc怎么把文件数据读到数组中?

img
比如把这个数据读到数组中,给数组赋值,如a[0]=1,a[1]=2, a[9]=10, c++中可以 ifs>>a[i]循环,mfc应该怎么弄?

  • 写回答

2条回答 默认 最新

  • 浪客 2021-07-23 22:49
    关注

    下面是《VC++深入详解》上读取文件的例子,最近正在看,正好用上

    void CFileView::OnFileRead() 
    {
    /*    FILE *pFile=fopen("1.txt","r");
        char ch[100];
        memset(ch,0,100);
        fread(ch,1,100,pFile);
        fclose(pFile);    
        MessageBox(ch);*/
    /*    char *pBuf;
        fseek(pFile,0,SEEK_END);
        int len=ftell(pFile);
        pBuf=new char[len+1];
        rewind(pFile);
        fread(pBuf,1,len,pFile);
        pBuf[len]=0;
        fclose(pFile);
        MessageBox(pBuf);
    */
    /*    FILE *pFile=fopen("2.txt","rb");
        char ch[100];
        fread(ch,1,3,pFile);
        ch[3]=0;
        MessageBox(ch);
        fclose(pFile);*/
    /*    ifstream ifs("4.txt");
        char ch[100];
        memset(ch,0,100);
        ifs.read(ch,100);
        ifs.close();
        MessageBox(ch);*/
    /*    HANDLE hFile;
        hFile=CreateFile("5.txt",GENERIC_READ,0,NULL,OPEN_EXISTING,
            FILE_ATTRIBUTE_NORMAL,NULL);
        char ch[100];
        DWORD dwReads;
        ReadFile(hFile,ch,100,&dwReads,NULL);
        ch[dwReads]=0;
        CloseHandle(hFile);
        MessageBox(ch);*/
    /*    CFile file("6.txt",CFile::modeRead);
        char *pBuf;
        DWORD dwFileLen;
        dwFileLen=file.GetLength();
        pBuf=new char[dwFileLen+1];
        pBuf[dwFileLen]=0;
        file.Read(pBuf,dwFileLen);
        file.Close();
        MessageBox(pBuf);*/
    
        CFileDialog fileDlg(TRUE);
        fileDlg.m_ofn.lpstrTitle="我的文件打开对话框";
        fileDlg.m_ofn.lpstrFilter="Text Files(*.txt)\0*.txt\0All Files(*.*)\0*.*\0\0";
        
        if(IDOK==fileDlg.DoModal())
        {
            CFile file(fileDlg.GetFileName(),CFile::modeRead);
            char *pBuf;
            DWORD dwFileLen;
            dwFileLen=file.GetLength();
            pBuf=new char[dwFileLen+1];
            pBuf[dwFileLen]=0;
            file.Read(pBuf,dwFileLen);
            file.Close();
            MessageBox(pBuf);
        }
    
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • 小黑土土777 2021-07-26 12:37
    关注

    可以先按行读取,然后在进行拆分赋值到数组中

    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月1日
  • 已采纳回答 11月23日
  • 创建了问题 7月23日

悬赏问题

  • ¥15 关于PROCEDURE和FUNCTION的问题
  • ¥100 webapi的部署(标签-服务器)
  • ¥20 怎么加快手机软件内部计时的时间(关键词-日期时间)
  • ¥15 C语言除0问题的检测方法
  • ¥15 为什么四分管的内径有的是16mm有的15mm,四分不应该是12.7mm吗
  • ¥15 macos13下 ios交叉编译的问题
  • ¥15 bgz压缩文件怎么打开
  • ¥15 封装dll(引入了pcl的点云设计库)
  • ¥30 关于#开发语言#的问题:我需要在抄板的基础上再抄板抄程序,根据RDA8851CM基础上开发
  • ¥15 oracle 多个括号,怎么删除指定的括号及里面的内容?