• 6869阅读
  • 14回复

[提问]QT中debug读写文本文件的问题 [复制链接]

上一主题 下一主题
离线529082353
 
只看楼主 倒序阅读 楼主  发表于: 2012-05-14
各位大虾,求助问题如下:
我在win下新建了一个QT4 console application程序,用来读写文本文件。然后我运行生成了debug文件,我再把TXT文本文件放进debug文件夹。可是显示不了。这是什么问题?我用的是QT sdk.
离线benbenmajia

只看该作者 1楼 发表于: 2012-05-14
是不是路径不对了?
安然.....
离线529082353
只看该作者 2楼 发表于: 2012-05-14
能说的具体点吗?该怎么设置路径
离线benbenmajia

只看该作者 3楼 发表于: 2012-05-14
回 2楼(529082353) 的帖子
你程序里面设置的读取的text的路径
安然.....
离线529082353
只看该作者 4楼 发表于: 2012-05-14
就是我建立的文件是file.txt.里面程序代码是:QFile file("file.txt")。我的debug文件夹在D:\Downloads\TextFile-build-desktop-Qt_4_8_0_for_Desktop_-_MinGW__Qt_SDK____里,我就把文本文件放在这个debug文件里面。请问该怎么改。

                                                                                                                                              谢谢
离线benbenmajia

只看该作者 5楼 发表于: 2012-05-14
把file.txt copy到你的exe文件一J目录里面
安然.....
离线529082353
只看该作者 6楼 发表于: 2012-05-14
就是EXE文件和TXT文件已经都在debug文件夹里面了,然后还是显示不了
离线529082353
只看该作者 7楼 发表于: 2012-05-14
#include <QtCore/QCoreApplication>#include <QFile>#include <QtDebug>int main(int argc, char *argv[]){    QCoreApplication a(argc, argv);    QFile file("file.txt");    if(file.open(QIODevice::ReadOnly))        {        char buffer[2048];        qint64 lineLen=file.readLine(buffer,sizeof(buffer));        if(lineLen!=-1)        {         qDebug()<<buffer;        }        }        return a.exec();}有两个文件夹:D:\Downloads\TextFile和D:\Downloads\TextFile-build-desktop-Qt_4_8_0_for_Desktop_-_MinGW__Qt_SDK____
TextFile文件夹里面有TextFile.pro,main.cpp和TextFile.pro.user
TextFile-build-desktop-Qt_4_8_0_for_Desktop_-_MinGW__Qt_SDK____文件夹里有debug文件夹和release文件夹,还有Makefile,Makefile.debug,Makefile.release。
debug文件夹里有main.o,TextFile.exe,file.txt。

怕自己说的不明白,现将文件夹及其代码复制上去,希望各位大虾帮忙解决,感激不尽!!!
离线benbenmajia

只看该作者 8楼 发表于: 2012-05-14
回 7楼(529082353) 的帖子
你启动exe是通过双击启动还是通过IDE启动的?
安然.....
离线benbenmajia

只看该作者 9楼 发表于: 2012-05-14
qDebug()?这个只能显示在output里面,你直接启动程序的话怎么可能能看到....
另外,你这段程序是有问题的
安然.....
离线529082353
只看该作者 10楼 发表于: 2012-05-14
IDE启动的
离线529082353
只看该作者 11楼 发表于: 2012-05-14
那我该怎么改呢,
离线benbenmajia

只看该作者 12楼 发表于: 2012-05-14
    if(file.open(QIODevice::ReadOnly))        
    {        
        char buffer[2048];  
        qint64 lineLen = 0;
        while(-1 != lineLen)
        {
            lineLen=file.readLine(buffer,sizeof(buffer));
            qDebug()<<buffer;
        }
    }
安然.....
离线benbenmajia

只看该作者 13楼 发表于: 2012-05-14
回 10楼(529082353) 的帖子
IDE启动自动寻找目录是在你的main.cpp的相对位置,你放在debug里面能找到么?
安然.....
离线529082353
只看该作者 14楼 发表于: 2012-05-14
好的,我试试,非常感谢
快速回复
限100 字节
 
上一个 下一个