例如:cross.txt
2     7
1    2   13   6   7  12  11
14   3   4    5   8   9  10
第一行的2,7,表示从第二行开始时2行7列的数据。
vc中怎么实现:
    先单独读取第一行,再读取其他的行。我想在程序中,把txt中的数据,转化成一个int aa[2][7]的数组。
   麻烦大家了。谢谢。

解决方案 »

  1.   

    CStdioFile file_src;   
    file_src.Open("文件路径",CFile::modeRead|CFile::typeText);   
    CString strTemp;   
    while(file_src.ReadString(strTemp))   
     {   
      //do what do you want to   
      }   
    file_src.Close();
    读单独的一行
    其他的陆续读过来,自己转换下就行
      

  2.   

    CStdioFile file_src;   
    file_src.Open("文件路径",CFile::modeRead|CFile::typeText);   
    CString strTemp;   
    while(file_src.ReadString(strTemp))   
     {   
      //do what do you want to   
      }   
    file_src.Close();
      

  3.   

    读出每行放入CString中 用find以空格取每个字符 再用atoi就行了了
      

  4.   

    FILE* pf = fopen(..);
    int row,col;
    fscanf(pf,"%d%d",&row,&col);
    int* pData = new int[row][col];
    for( int i = 0;i<row;i++)
    {
        for( int j = 0 ; j<col ; j++ )
        {
           fscanf(pf,"%d",&pData[row][col]);
         }
    }
      

  5.   

    楼主,你这个txt数据的格式是不是你自己定义的?如果是的话就是自己给自己找麻烦了,解析文本就得花点时间,如果格式是自己定义的话,最好给你的数据做个标识,例如标注为(2,7)也好啊,解析起来方便多了
      

  6.   

    读一行可以用指针吧关于每一行数据个数不一样多
    好象没多大关系吧,你又不把你读出来的东西放进数组
    就象1 2楼的,读进cstring 难道你还怕装不下一行?要得到个数据个数,,就在cstring中查找个 空格的个数,
      

  7.   

    这个应该比较简单吧,可以用MFC的
    StdioFile类的ReadString函数,读取一行到CStirng中
    再一个一个找出来。也可以和fread函数。
      

  8.   

    数据txt就是这样的,不是我自己给自己找麻烦的,呵呵。
      

  9.   

    可以使用CFile 类,或者WIN32 API ,CreateFile,ReadFile