• 4673阅读
  • 7回复

[提问]求助!!!无法打开未知文件 [复制链接]

上一主题 下一主题
离线demonkong
 
只看楼主 倒序阅读 楼主  发表于: 2011-05-04
通过QFileDialog 获取文件路径后,无法通过文件路径打开文件并获取文件内容,
怎样通过文件路径打开文件啊?
  1. void MainWindow::on_openButton_clicked()
  2. {
  3.     QTextCodec *code=QTextCodec::codecForName("utf8");
  4.     QString filename = QFileDialog::getOpenFileName(
  5.        this,
  6.        "Open Document",
  7.        QDir::currentPath(),
  8.        "Document files (*.doc *.txt);;All files(*.*)");
  9.     if (!filename.isNull())
  10.     {
  11.     QFile file(filename);
  12.     QTextStream stream(&file);
  13.     stream.setCodec(code);
  14.     while(stream.atEnd()==0)
  15.        {
  16.         ui->label->setText(stream.readLine());
  17.        }
  18.     }
  19. }
离线XChinux

只看该作者 1楼 发表于: 2011-05-04
你没有调用file.open()函数吧?
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线demonkong
只看该作者 2楼 发表于: 2011-05-04
回 1楼(XChinux) 的帖子
谢谢啊,但是用了file.open()显示的是文件的路径,而不是文件内容啊。
离线roywillow

只看该作者 3楼 发表于: 2011-05-04
我想知道所谓的“内容”是什么东西?
如果你打开txt格式,那么就以文本模式输出
如果是doc……显然没法直接输出成为本的
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线jdwx

只看该作者 4楼 发表于: 2011-05-04
没有看到fileOpen
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线demonkong
只看该作者 5楼 发表于: 2011-05-04
回 3楼(roywillow) 的帖子
打开txt文本内容
离线demonkong
只看该作者 6楼 发表于: 2011-05-04
回 4楼(jdwx) 的帖子
有file.open()也不行额
离线roywillow

只看该作者 7楼 发表于: 2011-05-04
没怎么用过TextStream,那个好像一般情况下会自动处理一些编码问题的
直接把stream >> QString里面试试呢,这样应该会一口气把所有内容都读取进来的吧……
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
快速回复
限100 字节
 
上一个 下一个