$PMTKANT,1*44
$GPGGA,081239.000,2419.9521,N,10926.6835,E,1,5,1.32,114.1,M,-18.0,M,,*7C
$GPGSA,A,3,14,31,12,18,25,,,,,,,,1.63,1.32,2.99*0E
像这样的很多数据,我想将每一行每一个元素都定位(以后数学算法要用)怎么读取,
我新手一个,如果您有时间,请您多写点,写详细点,如果您没时间,指个路也行,
晚辈先行谢过

解决方案 »

  1.   

    这是另一个帖子:[VC/MFC/非技术类]VC6.0文件路径显示不出来。求指点[已结帖]
    真心不知道为什么还是0.00%
      

  2.   


    一,可以直接用 CFile读取,貌似CFile不能一行一行的读取CFile重要函数为CFile::Read(缓冲区地址,大小);
    二,可以用c+++  std::ifstreamwhile(ifs.peek()!=EOF)
    {
    getline(ifs,str);
    //读取后进行拆开strchar* pch;
    pch=strtok(str,",");
    while(pch!=NULL)
    {
    pch=strtok(NULL,",");//保存到string数组中}}
    保存在你的string数组中
    三、c语言的fgets函数,读取一样的
    fgets 会读取到换行符号。貌似getline也会,反正一句话, 会的话,自行处理
      

  3.   

    用CFileDWORD file_length;
    CFile file;
    CString file_str;
    if(file.Open(file_path,CFile::modeRead)==0)
    {
    file_str="";
    AfxMessageBox("获取文本文件内容信息失败");
    }
    else
    {
    file_length=file.GetLength();
    if(file_length!=0)
    {

    char* pBuf;
    pBuf=new char[file_length+1]; 
    pBuf[file_length]=0;
    file.Read(pBuf,file_length);
    file_str=pBuf;
    file.Close();
    }
    }将数据读取到CString类file_str,判断的时候用file_str.Find("$PMTKANT,1*44
    ",0)就可以