forkira |
2018-05-26 17:27 |
初学者提问,如何读取txt文件内容并输出到文本框
小弟新手上路,QT版本为5.9.5,在学习某博客的代码时,发现无法从txt文件中正确读取内容并输出。请各位前辈指点一下。最好是代码形式,谢谢! 输出结果[attachment=19014][attachment=19015] 博客代码:- #include "mainwindow.h"
#include "ui_mainwindow.h" #include <QFile> #include <QFileDevice> #include <QTextStream> MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this);
}
MainWindow::~MainWindow() { delete ui; }
void MainWindow::on_pushButton_clicked() { QString displayString; QFile file("text.txt"); if(!file.open(QIODevice::ReadOnly | QIODevice::Text)) { qDebug()<<"Can't open the file!"<<endl; } while(!file.atEnd()) { QByteArray line = file.readLine(); QString str(line); qDebug()<< str; displayString.append(str); } ui->textEdit->clear(); ui->textEdit->setPlainText(displayString); }
void MainWindow::on_pushButton_2_clicked() { QString displayString; QFile file("text.txt"); if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) return;
QTextStream in(&file); QString line = in.readLine();
while (!line.isNull()) { // process_line(line); line = in.readLine(); displayString.append(line); } ui->textEdit->clear(); ui->textEdit->setPlainText(displayString); }
void MainWindow::on_pushButton_3_clicked() { QString displayString; QFile file("text.txt"); if(!file.open(QIODevice::ReadWrite | QIODevice::Text)) { qDebug()<<"Can't open the file!"<<endl; } QTextStream stream(&file); QString line_in; stream.seek(file.size());//将当前读取文件指针移动到文件末尾 int count = 0; while(count < 10) { stream << QObject::trUtf8("新建行:") <<++count<<"/n"; } stream.seek(0);//将当前读取文件指针移动到文件开始 while( !stream.atEnd()) { line_in = stream.readLine(); displayString.append(line_in); qDebug() << line_in; } ui->textEdit->clear(); ui->textEdit->setPlainText(displayString); }
|
|