7

说我有这个:

QString mystring = "67 49 213 59";
int a, b, c, d;

是否有 Qt 替代 sscanf 以便我可以将数字读入int变量?

4

4 回答 4

8

QTextStream提供标准库的流的等价物。不要忘记文本流应该在字符串之前被销毁。

QString mystring = "67 49 213 59";
QTextStream myteststream(&mystring);
int a = 0, b = 0, c = 0, d = 0;
myteststream >> a >> b >> c >> d;
于 2012-10-22T14:09:00.187 回答
5
int a, b, c, d;
QString s("67 49 213 59");
QTextStream(&s) >> a >> b >> c >> d;
于 2012-10-22T14:05:11.700 回答
1
QString str("67 49 213 59");
QStringList list = str.split(" ");
int a[list.count];
for (int i = 0; i < list.count; i++)
   a[i] = list[i].toInt();
于 2012-10-22T22:40:26.233 回答
1

你总是可以做

QByteArray oString = mystring.toAscii();
const char *pszString = oString.constData();

然后正常使用 sscanf() 。

于 2013-04-16T17:29:05.177 回答