char buffer= “<Notify> Unregistered={“tml_id”:“HT057” } </Notify>“怎么用c语言获取到中间字段Unregistered={“tml_id”:“HT057” }
时间: 2023-09-17 13:13:37 浏览: 44
您可以使用字符串操作函数 `strstr` 和 `strchr` 来获取中间字段 `Unregistered={“tml_id”:“HT057” }`。具体实现如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char buffer[] = "<Notify> Unregistered={\"tml_id\":\"HT057\" } </Notify>";
char *start, *end;
char field[100]; // 假设字段不超过 100 个字符
// 查找起始位置
start = strstr(buffer, "Unregistered={");
if (!start) {
printf("未找到中间字段\n");
return -1;
}
start += strlen("Unregistered={"); // 跳过起始标识符
// 查找结束位置
end = strchr(start, '}');
if (!end) {
printf("未找到中间字段\n");
return -1;
}
// 复制中间字段到新的字符串
strncpy(field, start, end - start + 1);
field[end - start + 1] = '\0';
printf("中间字段为:%s\n", field);
return 0;
}
```
输出结果为:
```
中间字段为:"tml_id":"HT057"
```