• 4237阅读
  • 7回复

读文件 [复制链接]

上一主题 下一主题
离线wsszlj
 

只看楼主 正序阅读 楼主  发表于: 2010-01-22
QString line1;
    QFile file1("./data/state.dic");
    if(!file1.open(QIODevice::ReadOnly  | QIODevice::Text))
        return;
    QTextStream in1(&file1);
    while (!in1.atEnd()) {
        line1 = in1.readLine();
    }
    file1.close();

大家帮忙看下 我这段读文件的代码,每次读的line1都是" "
离线benbenmajia

只看该作者 7楼 发表于: 2010-01-22
while (!in1.atEnd()) {
         line1 .append("     ");
        line1 .append( in1.readLine( ));
    }
安然.....
离线yangfanxing
只看该作者 6楼 发表于: 2010-01-22
引用第3楼wsszlj于2010-01-22 09:50发表的  :
我.dic文件里只有一个字符,阿拉伯数字。

这个。。。我有点儿不信,哈哈哈哈哈哈哈……你多敲几个字儿呗。。。

小气鬼,喝凉水,——口头禅哈。。。
PHPWind好恶心。。。不想看这种界面。。。
离线午小夜

只看该作者 5楼 发表于: 2010-01-22
while (!in1.atEnd()) {
        line1 .append( in1.readLine( ));
    }
[操作系统版本]  Windows XP;Linux Ubuntu;Linux Fedora;
[Qt SDK版本]    4.7.0
[SDK 发布日期]  2010.05
[IDE(集成开发环境)] QtCreator
个人网页:http://hi.baidu.com/午小夜
學歷:Royal Jalidon
离线benbenmajia

只看该作者 4楼 发表于: 2010-01-22
你把你的QString换成QStringList输出看看
安然.....
离线wsszlj

只看该作者 3楼 发表于: 2010-01-22
我.dic文件里只有一个字符,阿拉伯数字。
离线benbenmajia

只看该作者 2楼 发表于: 2010-01-22
同LS,QString这个数据结构只能存取一个字符串,你一直在重复赋值就不停在刷新QString的值
安然.....
离线yangfanxing
只看该作者 1楼 发表于: 2010-01-22
1、路径写对的话("./data/state.dic");
2、line1是QString,只保存最后一次读入(前边各行被覆盖);所以只输出最后一行;
3、试试看QStringList,应该就读出各行了~
4、你的文件肯定最后一行是空行(或是一个空格),所以显示为空""(或" ")。
PHPWind好恶心。。。不想看这种界面。。。
快速回复
限100 字节
 
上一个 下一个