QstringList 到 Qstring 的转换问题
QstringList to Qstring conversion issues
我正在使用qt框架开发VS2015。在我的源代码中,我有一个在GUI屏幕中打印的功能。每次需要打印某些内容时都会调用此函数。事情是这样的。
void Trial::Print_MessageBox(QString string)
{
ui.MessagesScreen->appendPlainText(string);
Cursor_Messagebox.movePosition(QTextCursor::End);
ui.MessagesScreen->setTextCursor(Cursor_Messagebox);
ui.MessagesScreen->ensureCursorVisible();
}
// Output in MessageBox
void Trial::Print_MessageBox(QFlags<QNetworkInterface::InterfaceFlag> flags)
{
QString str = QString("Flag %1").arg(flags);
ui.MessagesScreen->appendPlainText(str);
}
上述功能没有问题,运行良好。
现在我正在尝试读取文本文件。这具有一组没有顺序或大小的值。举个例子:
票价:231, 54, 4
47777, 2211, 676, 9790, 34236, 7898
1, 3
目标是将它们转换为整数(逐行)并在GUI中打印它们,并将它们(逐行)发送到其他系统。所以我尝试用以下内容来做到这一点。
void Trial::ReadFile_Data()
{
QFile file("input.txt");
if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
{
Print_MessageBox("Error in reading File");
return;
}
QTextStream in(&file);
while (!in.atEnd())
{
QString line = in.readLine();
Print_MessageBox(line);
int conv = line.toInt();
QString str = QString("%1 %2").arg("Values are: ").arg(conv);
Print_MessageBox(str);
QStringList fields = line.split(",");
}
file.close();
}
当我打印"行"时,它只是打印与文件中相同的值。当我进行转换和打印时,我收到一个错误(这是预期的)现在我尝试在拆分的帮助下删除","然后我得到 QstringList,我无法使用它,因为我有 Qstring 函数要打印(这无法更改)
我没有从这里得到任何指示。请帮助我,因为这长期以来一直困扰着我。
很简单...
QStringList::const_iterator constIterator;
for (constIterator = fonts.constBegin(); constIterator != fonts.constEnd();
++constIterator) {
cout << (*constIterator).toLocal8Bit().constData() << endl;
}
其中字体是你的QStringlist
您的问题简化为"如何迭代QStringList
"。
喜欢这个:
// C++11
for (auto field : fields) Print_messageBox(field);
// C++98
foreach (QString field, fields) Print_messageBox(field);
有关如何实施foreach
又名Q_FOREACH
的信息,请参阅此处。
相关文章:
- 模板类转换问题 - 无法推断调用的函数
- 复制构造函数隐式转换问题
- 与模板 (c++) 相关的转换问题
- 将文件复制到自定义位置,存在字符串转换问题
- 从基指针到派生的强制转换问题
- JNI 日期值转换问题,在C++中获取不同的长整型值
- 类型转换问题
- 拆分 pybind11 模块和自动类型转换问题
- 类型转换问题:返回为整数而不是浮点/类型
- 如何解决ostream_iterator转换问题?
- C++转换问题
- 代码 c++ VS 2010 中的 LPCWSTR 到字符串转换问题
- 罗马数字C++编程转换问题
- C++十进制到时间的转换问题
- C++到 C 的转换问题
- C 复合分配和类型转换问题
- CPP预处理器到C预处理器转换问题
- 将数据类型从C#封送至C++的类型转换问题
- COM对象,并返回QVariant强制转换问题
- C 汇编器转换问题