c++ - 使用 qt 完成编程时,在 if 语句之外打印变量数据时遇到问题

标签 c++ linux qt

在 Qt 中,我尝试使用 QStringList 读取一些数据 喜欢, 输入: 姓名:xxxxx 编号:yyyy 学院:zzzzz

       name:bbbb
       .....will repeat with the same keywords

因此,我通过 QStringList 使用标记拆分“:”搜索这些数据,然后在 if 语句中检查关键字是否包含“name”或“id”并将数据馈送到 QString。当完成所有数据存储后,我会附加这些数据,例如 xxxx+yyyy+zzzz;我试图将这些作为 QString 返回,然后在此之前我尝试打印附加字符串,我将数据获取为

  example:- xxxxx, "", ""
           "" ,yyyyy,"" like this can anyone spot the issue would be helpful

最佳答案

我不知道你如何在没有代码的情况下尝试做到这一点。如果我没猜错的话,你正在做这样的事情......

#include <QDebug>
#include <QStringList>

int main() {
    QStringList strings;

    strings.append("name:xxxxx");
    strings.append("id:yyyy");
    strings.append("college:zzzzz");

    QString name;
    QString college;
    QString id;

    foreach (const auto &str, strings) {
        if (str.contains("name")) {
            name = str.split(":").at(1);
        }

        if (str.contains("college")) {
            college = str.split(":").at(1);
        }

        if (str.contains("id")) {
            id = str.split(":").at(1);
        }
    }

    QString finalString = name + id + college;

    qDebug() << finalString;

    return 0;
}

输出为“xxxxxyyyyzzzzz”。我希望这有帮助。

关于c++ - 使用 qt 完成编程时,在 if 语句之外打印变量数据时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45911941/

相关文章:

java - 如何在 Linux centOS 中安装 JDK

c++ - Qt线程同步

c++ - 程序在 C++11 中使用条件变量进入死锁

linux - 使用make命令安装touch Egg时

C++ 指向运算符的指针

linux bash脚本获取用户输入并存储在数组中

c++ - setContextProperty() 在这种情况下如何失败?

c++ - 将无符号字符转换为红黑树的有符号字符

c++ - C++ 类上下文中的引用和指针

c++ - unique_ptr vector 的赋值运算符