【发布时间】:2012-04-08 12:24:50
【问题描述】:
如何拆分从文件中提取的此类文本?
USA Florida
Russia Murmansk
Germany Bonn
在美国、佛罗里达、俄罗斯、摩尔曼斯克……每个单词都应该保存在一个 QString 中。 基本上我就是这样做的:
QFile df("../MyData/visit.DAT");
if (!df.open(QIODevice::ReadOnly | QIODevice::Text)) {
qDebug()<<"Could not open file for reading";
return;
}
QTextStream txStream(&df);
while (!txStream.atEnd()) {
QString text = txStream.readLine();
QStringList splitD = text.split(" ");
qDebug() << "-"<<splitD;
}
dataFile.close();
当我尝试使用 .value(index) 从 QStringList 获取值时,我得到的两个词都在同一行。
如何正确拆分这些单词??
【问题讨论】:
-
我不明白这个问题。 split() 是正确的方法。 “我两个词都在同一行”到底是什么意思?
-
我得到:美国佛罗里达线;但不是美国,然后是佛罗里达
-
您的
QStringList是splitD,但您正试图打印出一个名为splitData的变量。这是笔误吗。在你的问题?如果是这样,请确保您显示的代码仍然显示相同的行为。