Qt sscanf相当于

时间:2012-10-22 13:59:19

标签: c++ qt

说我有这个:

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

是否有替代sscanf的Qt,所以我可以将数字读入int个变量?

4 个答案:

答案 0 :(得分:4)

int a, b, c, d;
QString s("67 49 213 59");
QTextStream(&s) >> a >> b >> c >> d;

答案 1 :(得分:4)

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

QString mystring = "67 49 213 59";
QTextStream myteststream(&mystring);
int a = 0, b = 0, c = 0, d = 0;
myteststream >> a >> b >> c >> d;

答案 2 :(得分: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();

答案 3 :(得分:1)

你总是可以做到

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

然后正常使用sscanf()。