我的文本内容格式如下: 
数据库中文名,(CHname),英文名,ENname[D] 
数据库表,Tablename[T] 
表属性,shuxing1,shuxing2,shuxing3,……[P] 
数据库表,Tablename[T] 
表属性,shuxing1,shuxing2,shuxing3,……[P] 
…… 
数据库表,Tablename[T] 
表属性,shuxing1,shuxing2,shuxing3,……[P] 现在我想用CFile的读文件操作将文本里面的内容读出来,并且将每个数据库表的内容存入一个如下的结构体中: 
typedef struct DBtable() 

CString DBchinese;//所属数据库中文名 
CString DBenglish;//所属数据库英文名 
CString TABLEname;//数据表名 
char ATTribute[20];//表的各个属性 
} 不知道要怎么读文件,读出来数据以后要怎么样分析读出来的数据,才能把字符串中内容适当的存入链表结构体中。 
初学MFC,请各位高手给点指导,有合适的实例代码就更好了。 
不胜感激! 

解决方案 »

  1.   

    用特定的分隔符分隔这些数据,然后读的时候直接解析
    其实最好的方法就是用xml,解析最方便了
      

  2.   

    为什么要用Txt呢?
    XML或ini也比它强很多很多~~~
    还有专门的API~
      

  3.   

    可以一行一行的读到buffer里面,然后用strtok函数用","进行分割,也可以用AfxExtractSubString直接把字符串分开。
    第一行单独处理,其他的可以每2行可以用循环处理。
      

  4.   


    CStdioFile fp; 
    CString str1; 
    CString str="C:\\name.txt"; 
      
    fp.Open(str,CFile::modeRead | CFile::typeText); 
    fp.ReadString(str1); 
    CString database[4];
    int i=0;
    while(i<4){
      int pos = str1.Trim().Find(",");
      databasr[i] = str1.Left(pos).Trim();
      str1 = str1.Mid(pos+1).Trim();
      i++;
    }以上是我写的示例代码,帮你把“数据库中文名,(CHname),英文名,ENname[D] ”进行分割,放到大小为4的CString数组中去。
    下面的你自己灵活变通吧
      

  5.   

    首先你的结构体不能这么定义,见如下格式:至于内容最好还是用XML存储,如果你按我的结构体存储的话也可以直接存储结构体就行了,那样读取也方便。
    const int MAX_LEN = 50;
    typedef struct ATTributeNode{//表的各个属性节点
        char szName[MAX_LEN];
        ATTributeNode*  pNext;
    };
    typedef struct DBtable() 

       char szDBchinese[MAX_LEN];//所属数据库中文名 
       char szDBenglish[MAX_LEN];//所属数据库英文名 
       char szTABLEname[MAX_LEN];//数据表名 
       ATTributeNode* pATTributeHead;//表的各个属性 
    };
      

  6.   

    如果你的文本内容足够规范, 可以用memcpy直接复制到结构中复制前把分隔符和回车替换成0
      

  7.   

    既然你知道了文本的格式,剩下的就很简单了,需要学会两个问题:1、怎样读文件。这个查msdn中CFile。最好是一行一行的读文件,看一下msdn中的CStdioFile2、怎样解析读到的数据。因为文本的格式都知道了,这个就是一个CString的问题了。查msdn中CString
    主要看Find,Left,Mid,Right这几个函数就够了
      

  8.   

    总共1K的有用数据,需要8K的xml来存储
      

  9.   

    9楼的高手说的很在理啊!我们这要求就用文本存,不用XML,所以也很感激给提出意见的各位!
      

  10.   

    我这么说只是为了说明xml里面的垃圾信息太多,反而真正的数据占得地方很少
    好多人都是为了xml而xml,本来一个简单的配置文件也要用xml文件,真是本末倒置你可以随边找几个xml文件看看,有用数据跟xml本身数据哪个站的比例大
    还是比较喜欢用ini文件