逐字符搜索QString

时间:2013-09-20 11:51:19

标签: qt char qstring

我正在尝试使用while循环逐字符解析QString字符,但我无法弄清楚如何将单个字符解析为char类型。这是我的代码,我知道它不是最佳的:

QString temp = (QString)t[0];
int i = 1;

while (t[i] != " ");
{
    temp.append(t[i]);
    i += 1;
}

我已经看到使用toLocal8bit函数的转换,但无论我尝试什么,我都无法使其适应我的代码。

Qt Creator显示此错误:

error: conversion from 'const char [2]' to 'QChar' is ambiguous

符合while函数调用

2 个答案:

答案 0 :(得分:0)

你为什么不尝试:

QString test = "test";


for(int i = 0; i< test.length(); i++)
{
    if (test.at(i) != " ")
        test.at(i).toLatin1();
}

答案 1 :(得分:0)

您可以将C ++ 11范围用于循环

for (auto chr : text)
{
    if (!chr.isDigit()) // for exmpl.
    return false; 
}