qstring 相关问题

QString是Qt库中的一个实现字符串的类。

有一种方法来增加QString?

< 有一种方法可以在C ++中递增QString-类似: QString str("a"); str++; qDebug()<<a; //Here i want letter "b" Edit:是的,基本上我想增加一个字母,但是增加较长的字符串会很好。 您无法真正增加字符串,因为您首先必须定义如何工作。例如,值包裹在哪里ard。 不过,您可以增加字符,但即使这仅适用于有意义的字符序列: str[0].unicode()++; Edit:反应OP评论 如果您只想在方案之间切换,这是您要使用的代码: enum Scenarios { ScenarioOne, ScenarioTwo, ScenarioThree, ScenariosCount }; Scenarios var = ScenarioOne; var++; 您无法递增或减少QString,因为++和 - 运算符未针对该类定义,并且没有明确的概念概念,即使字符串的增加可能含义(虽然您可能很清楚,但不够清楚地使其成为标准QT库的一部分)。 您能做的就是创建一个QString子类,然后实现操作员++()和操作员 - ()。有了这样的子类,您将保留标准QString的所有功能,同时使其完全按照您想要的增量和减少。 您可以为每个字符使用cascii值,并将它们串联到字符串 在一个项目中,我被要求创建一个可以随着每次使用而增加的字符串。 使用AAA,AAB,AAC,AAD ... ... ZZZ的组合,然后再次返回AAA。 搜索时,我遇到了这篇文章。 因此,我正在使用这个小小的增量功能做出回应。 QString incrementAlpha(QString stringFonc) { QString response = ""; int posCharacter = stringFonc.length()-1; // Increment Last Character stringFonc[posCharacter].unicode()++; // For Each Character for(int i=posCharacter; i>=0; i--) { // If Current Character beyond Z if(stringFonc[i].unicode()>90) { // Set to A stringFonc[i].unicode() = 65; // If Not First Character of the String -> Increment Character Before Current Position if(i!=0) stringFonc[i-1].unicode()++; } } // For Each Character // String Reconstruction for(int i=0;i<posCharacter+1;i++) response += QString(stringFonc[i].unicode()); return response; } 和这小件代码用于测试功能 QString alphaCount = "AAA"; int nbPossibility = pow(26,alphaCount.length()); for(int i=0;i<nbPossibility;i++) { qDebug() << alphaCount; alphaCount = incrementAlpha(alphaCount); } 希望这对某人有帮助。

回答 4 投票 0

在std :: string和qString

在我的程序中,用户可以在命令行上提供文件名或使用qfiledialog。在第一种情况下,我有一个char*没有任何编码信息,第二个我有一个QString。 ...

回答 1 投票 0

从函数 - 线程安全的QSTRING返回QString?

我是QT的新手 - 但这可能是一个非常基本的C ++问题。 我有一个简单的功能,可以返回QString:

回答 1 投票 0


如何使用 Qt 5.5.1 在调试器中查看 QString 值

有谁知道如何在 Qt 5.5.1 (QtCreator 5.3.1) 的调试器中查看 QString 值? 我尝试过在网上找到的各种方法,从启用/禁用 GDB 漂亮打印机、显示 QString ......

回答 4 投票 0

有什么好的理由默认初始化一个新的QString吗?

我遇到了一些遗留的 Qt 代码,我看到了很多这样的事情: QString myString = QString(); 从我的角度来看,这是没有必要的。 有什么充分的理由这样做吗?

回答 1 投票 0

在qt和qml中显示日文字符串

我有一个包含日语字符串的 QString。但在调试时它只显示“???”代替字符串。我需要它在 qml 中显示它。我使用过 QtextCodec 但对我不起作用。拜托...

回答 3 投票 0

将QString中每个单词的第一个字母大写的方法[关闭]

使用Qt,我需要将QString中每个单词的第一个字母大写。 我想过使用正则表达式来做到这一点,但这并不完全可读。也许我可以用像 s 这样的函数来做到这一点。

回答 4 投票 0

在Qt中;将 QString 中每个单词的第一个字母大写的最佳方法是什么?

我正在考虑正则表达式,但这并不完全可读。还有像 s.toUpper() 这样的函数需要考虑,可能还有其他的事情。 那么最好的方法是什么

回答 6 投票 0

为什么是 QString("FFFFFFFF").toInt(0, 16);返回0?

您可能知道,补码表示中的 0xFFFFFFFF 等于 -1(对于 32 位)。但是下面的代码: qint32 aa = QString("FFFFFFFF").toInt(0, 16); q调试()< 您可能知道,补码表示中的 0xFFFFFFFF 等于 -1(对于 32 位)。但是下面的代码: qint32 aa = QString("FFFFFFFF").toInt(0, 16); qDebug()<<aa; 打印0。代码如下: qint32 aa = 0xffffffff; qDebug()<<aa; 打印-1! 这是为什么? 如果您阅读文档,您可以看到toInt“如果转换失败,则返回0。” 您的输入不适合有符号的 32 位整数,因此可能转换失败。 您可以使用 ok 参数来验证这一点: bool ok; qint32 aa = QString("FFFFFFFF").toInt(&ok, 16); if (ok) qDebug() << aa; else qDebug() << "Conversion failed!"; FFFFFFFF 不是整数格式。 0xFFFFFFFF 是。而且 0xFFFFFFFF 也超出了 int 范围。尝试使用有符号整数。将转换函数 toInt 更改为 toUInit。这是代码: quint32 aa = QString("0xffffffff").toUInt(0, 16); quint32 bb = 0xffffffff; qDebug()<<aa; qDebug()<<bb; 已在我的机器上测试过。输出为 4294967295。

回答 2 投票 0

构建 QString 输出字符串

使用以下代码: QString 消息; msg = "数据记录项" + ',' + QString::数字(项目) + ',' + “从索引” + ',' ...

回答 3 投票 0

QString arg 中的参数不超过 9 个?怎么处理?

我写了一个很长的QString,有超过9个参数,我只是这样使用它: QString html = QObject::tr( "%1 %2 %3 %4 %5 %6 %7 %8 %9 %10 ...").arg(a, b, c, d, e, f, g, h, i, j); ...

回答 2 投票 0

在 Qt 中,如何将 Unicode 代码点 U+1F64B 转换为包含等效字符“🙋”的 QString?

背景: 我正在创建一个散列,允许您通过向其提供包含其字符的 QString 来查找下面看到的描述。 我得到了相关数据的完整列表,正在寻找一些东西......

回答 1 投票 0

将 std::string 转换为 QString

我有一个 std::string 内容,我知道它包含 UTF-8 数据。我想将它转换为 QString。我该如何做到这一点,避免 Qt 中的 from-ASCII 转换?

回答 4 投票 0

使用正确的编码加载并显示QString

我正在尝试从具有几个特殊字符的文件中加载名称,如果它在文件中(看起来像 meno:Marek Ružička/),我会显示它: QFile 文件("info/"+meno+".txt&qu...

回答 2 投票 0

在Qt中构造一个空的QString时,哪种方式最高效?

在Qt中构造一个空的QString时, QString() QString("") QLatin1String() QLatin1String("") QLatin1StringView() QLatin1StringView("") QStringLiteral() QStringLi...

回答 1 投票 0

如何在Qt中拆分QString并保留分隔符?

我有一个QString:“{x,c | 0x01}”,我想将其拆分为7个标记,如下所示: { X , C | 0x01 } 在 Qt 中最好的方法是什么? 我尝试使用 QString::split(QRegExp("[\{\},|]")),但它......

回答 4 投票 0

有没有一种有效的方法可以通过避免复制来将参数列表传递给 QString?

假设我有一个包含 N 个参数的列表,我想将其传递给 QString。数字 N 是可变的并在运行时确定。 如果我这样做: QString myString = "%1, %2,..." for(自动参数:l...

回答 1 投票 0

如何使用QString指定unicode字符?

如何使用QString通过代码(例如“4FF0”)指定unicode字符?我尝试了 QString s("\u4FF0");但它只输出一个问号。知道如何做到这一点吗? 编辑: 它就是这样工作的,b...

回答 5 投票 0

如何将 QJsonObject 转换为 QString

我有一个QJsonObject数据,想要转换为QString。我怎样才能做到这一点?在Qt中搜索帮助,它只能将QJsonObject转换为QVariantMap... 预先感谢。

回答 4 投票 0

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.