Q 到字符串,反之亦然

QString to String and vica versa

本文关键字:反之亦然 字符串      更新时间:2023-10-16

我正在做一个必须使用QT软件的项目。我有一个 qt 变量,例如

QString name_device;

我正在使用 matIO 库读取一个 .mat 文件,该文件具有具有类似名称的 1x3 字符变量。谁能告诉我如何将垫子的 1x3 字符变量转移到 QString 变量中?同样在传输到 QString 后,我将处理它,处理后我想再次将其保存在 .mat 文件中,为此我再次需要从 QString 传输到 1x3 Char。

这对我非常有帮助。

谢谢

几种方法可以初始化 QString,包括直接从 char 数组构造它。

要从 QString 返回到 char 数组,一种简单的方法是使用 QString::toStdString() 方法将其转换为 std::string,然后使用 std::string::c_str() 方法转换为 char 数组。

例如:

#include <QString>
#include <cstring>
#include <cassert>
int main()
{
    char str1[] = "abc";
    QString qString = str1;
    char const* str2 = qString.toStdString().c_str();
    assert(std::strcmp(str1, str2) == 0);
    return 0;
}

但请注意,这个简单示例假定使用 UTF-8 编码。请浏览我在此处链接的参考手册,以获取有关QString的更详细说明。