对于我正在处理的程序,我需要从在线xml文档中获取特定区域的信息。现在我将xml保存为字符串,然后使用press=xml.substr(1906,5);
从中获取我需要的内容。这是我从中提取信息的一行:<pressure_in>30.17</pressure_in>
这个问题是如果两者之间的值超过指定的长度(在这种情况下为5个字符),我就无法获得所需的值。我怎么能可靠地得到它?
答案 0 :(得分:1)
首先将字符串转换为xml结构,然后使用XPath选择器提取所需内容。这里有一个非常简单的例子:
答案 1 :(得分:1)
您是否考虑过这样的事情:
#include <stdio.h>
#include <string.h>
#include <ctype.h>
int main ()
{
// sample string below:
char* xmlText = "<pressure_in>30.17134</pressure_in>";
int n = strlen(xmlText);
for (int i = 0; i<n; i++) {
if (isdigit(xmlText[i]) || xmlText[i] == '.') {
// store result or just print:
printf("%c",xmlText[i]);
}
}
printf("\n")
return 0;
}
输出:
30.17134