在Qt 5中,可以使用QFile
和QTextStream
来以UTF-8编码方式读取文本文件,并将内容保存到QStringList
中。以下是一个基本的示例代码。
#include <QFile>
#include <QTextStream>
#include <QStringList>
QStringList readTextFileAsUtf8(const QString &filePath) {
QStringList lines;
QFile file(filePath);
if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) {
// 处理文件打开失败的情况
qDebug() << "Failed to open file:" << filePath;
return lines;
}
QTextStream in(&file);
// 设置QTextStream以UTF-8编码读取文件
in.setCodec("UTF-8");
while (!in.atEnd()) {
QString line = in.readLine();
lines.append(line);
}
file.close();
return lines;
}
// 在你的主函数或某个槽函数中使用这个函数
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
QString filePath = "your_file_path_here.txt"; // 替换为你的文件路径
QStringList content = readTextFileAsUtf8(filePath);
// 打印读取到的内容
foreach (const QString &line, content) {
qDebug() << line;
}
return app.exec();
}