• 3948阅读
  • 0回复

[提问]类QTextStream的函数readLine问题 [复制链接]

上一主题 下一主题
离线sqyzg
 
只看楼主 倒序阅读 楼主  发表于: 2012-03-01
我要做的是把一个文件中的内容读取到内存里。
代码大致如下:
  1. QTextStream in(&file);
  2. QString line,tempS;
  3. tempS = in.readLine();//读取第一行的文件标识信息
  4. if(tempS == "fire")
  5. {
  6.     int i;
  7.     tempS.clear();
  8.     while(!in.atEnd())
  9.     {
  10.           i = 0;
  11.           line = in.readLine();//读取下一行
  12.           while(i < line.length())
  13.           {
  14.               if(line.at(i) != ':')
  15.               {
  16.                   tempS += line.at(i);
  17.                   i++;
  18.               }else
  19.                       break;
  20.           }
  21.     }
  22. }
我调试时,发现第一次循环,也就是读取“fire”下面的一行。内容是:
'\0'+要读取的内容
第二次循环,在往下读一行:
'\0'(打开重复了三十多次)+要读取的内容。
在往下的每一行读取的内容都跟第二次循环读取的内容一样。


为什么会多了这么多的'\0'在每一行的开始呢?
感谢答疑!

快速回复
限100 字节
 
上一个 下一个