从QString中获取一个数字,然后将其转换为整数


我正在开发一个QT软件,该软件使用telnet命令从adsl调制解调器链接获取一些信息。我把所有这些信息都拿到了QString
QString datarate = ui->output->toPlainText();

我只想选一个号码后下行速率

Downstream rate = 10239 Kbps

并将其转换为整数以将其与其他数字进行比较。。。我不想拿第一个=20892 kbps的

Status: Showtime
Max:    Upstream rate = 1193 Kbps, Downstream rate = 20892 Kbps
Bearer: 0, Upstream rate = 1021 Kbps, Downstream rate = 10239 Kbps

有什么建议吗??注意:这个数字是随机的,所以adsl的状态与有很大不同

也许这样的东西会起作用:

QString datarate = ui->output->toPlainText();
int number = datarate.split("Downstream rate = ")[2].split(" ")[0].toInt();

这将采取以下步骤:

  1. 把绳子掰成碎片;下游速率=">
  2. 取该列表中的第三个字符串(应包含"10239Kbps"(
  3. 将其按空格字符分隔,并获取第一个令牌。(应包含"10239"(
  4. 最后将字符串转换为int

相关内容

最新更新