废话不说直接上代码
1.
QString displayString; QFile file("/home/alvin/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);
2.
QString displayString; QFile file("/home/alvin/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);
3.
QString displayString; QFile file("/home/alvin/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);
以上是三种QT读取文件的方法,
源码在这里自行下载查看
https://pan.baidu.com/s/1pKIwzHL
Txt文件的写入的方法
QFile f("./test.txt"); if(!f.open(QIODevice::WriteOnly | QIODevice::Text)) { cout << "Open failed." << endl; return data; } QTextStream txtOutput(&f); QString s1("123"); quint32 n1(123); txtOutput << QString::fromStdString(str_json) << endl; txtOutput << n1 << endl; f.close();