在做vc界面时,通过读文件命令按钮获取txt文档的来的数据(例如3个数) 显示在3个编辑框中,该如何做?需要什么代码?希望各位写详细点,本人初学者!!!感谢各位帮忙 
例如txt存有 :4,5,6

解决方案 »

  1.   


    FILE *hFile = fopen(...);
    fread(...);
    //按规则解析
    fclose(hFile);
    GetItemDlg(IDC_EDIT1)->SetWindowText()
      

  2.   

    建议去看这个函数: GetPrivateProfileString, 网上有相关的例子
      

  3.   

    大致的代码如下:
    int i=0;
    CStdioFile file;
    file.Open(...,...);
    CString strLine(_T(""));
    while(file.ReadString(strLine))
    {
      SetDlgItemText(IDC_EDIT1+i, strLine); 
    }
    file.Close();要求三个编辑框的ID是连续的,IDC_EDIT1是第一个编辑框ID。
      

  4.   

    [Quote=引用 3 楼 wltg2001 的回复:]
    大致的代码如下:
    int i=0;
    CStdioFile file;
    file.Open(...,...);
    CString strLine(_T(""));
    while(file.ReadString(strLine))
    {
      SetDlgItemText(IDC_EDIT1+i, strLine); 
    }
    file.Close();在编辑框的属性中输入IDC_EDIT1+1时提示有非法字符  怎么办?
      

  5.   

    在编辑框的属性中输入IDC_EDIT1+1时提示有非法字符 怎么办?
    =================
    这个当然不行了,你将第一个编辑框的ID设为IDC_EDIT1,第二个设为IDC_EDIT2,依此类推,但是要看一下resource.h文件里面的IDC_EDIT1到IDC_EDIT3是连续的。
      

  6.   

    1.逐行读取文件:CStdioFile File;///可以逐行读文件的类 
                             CString   strLine;     
                             while(File.ReadString(strLine))   //////将每行都放进strLine字符串里 
                             {     
                              AfxMessgeBox(strLine); 
                             }   
    1判断读出来的字: 
                              strLine=“1|2|3|”;//要判断的字符串 
                              int strIndex1  = strLine.Find('|');//在字符串中寻找“|” 
                              CString a[11]; 
                              if(-1 != strIndex1)//只要找到“|”就不会返回-1 
                              { 
                               int i=0; 
                                   while(  -1 != strIndex1)// 
                                   {     
                                       strIndex1 = strLine.Find('|'); 
                                       a[i] = strLine.Left(strIndex1); 
                                      strLine = strLine.Right(strLine.GetLength() - strIndex1-1) ; 
                                       i++; 
                                      if (i > 10)//退出循环 
                                      break; 
                                     } 
                           }