<protocol name=\"modbus\" type=\"tcp\"><point length=\"2\" addr=\"02\"/></protocol> C语言如何将每个双引号前面的/去掉
时间: 2023-07-05 07:35:53 浏览: 43
你可以使用 C 语言中的字符串处理函数来去掉每个双引号前的斜杠。例如,可以使用 `strchr` 函数找到每个双引号,然后用 `memmove` 函数将斜杠删除。以下是一个示例代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "<protocol name=\\\"modbus\\\" type=\\\"tcp\\\"><point length=\\\"2\\\" addr=\\\"02\\\"/></protocol>";
char *pos = str;
while ((pos = strchr(pos, '\"')) != NULL) {
if (*(pos - 1) == '\\') {
memmove(pos - 1, pos, strlen(pos) + 1);
}
pos++;
}
printf("%s\n", str);
return 0;
}
```
在上面的代码中,我们首先定义了一个包含双引号和斜杠的字符串 `str`。然后,我们使用 `strchr` 函数找到每个双引号的位置,如果该双引号前面是一个斜杠,则使用 `memmove` 函数将斜杠删除。最后,我们输出修改后的字符串。
相关问题
解析所给的myxml.xml文件。 要求: 打印出所给myxml.xml文件中所有 addr 元素 中的内容 myxml.xml文件内容如下 <?xml version="1.0" encoding="UTF-8"?> <addressinfo> <address id="one"> <name>one</name> <phone id="phone">18811463795</phone> <addr id="addrs">beij</addr> </address> <address id="two"> <name id="one">two</name> <phone name="aa" id="phone">122223232</phone> <addr id="addrs">tianj</addr> </address> <address id="three"> <name>three</name> <phone id="phone">34343432</phone> <addr id="adDR" >henan</addr> </address> </addressinfo>
使用DOM4J解析XML文件并打印出所有addr元素中的内容的代码如下:
```java
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class XMLParser {
public static void main(String[] args) {
try {
// 创建一个SAXReader对象
SAXReader reader = new SAXReader();
// 读取XML文件
Document document = reader.read("myxml.xml");
// 获取根元素
Element root = document.getRootElement();
// 遍历所有address元素
for (Element address : root.elements("address")) {
// 获取addr元素
Element addr = address.element("addr");
// 打印addr元素的内容
System.out.println(addr.getText());
}
} catch (DocumentException e) {
e.printStackTrace();
}
}
}
```
运行以上代码,将会打印出所给myxml.xml文件中所有addr元素的内容:
```
beij
tianj
henan
```
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:arch="http://arch.service.general.ieslab.com/"> <soapenv:Header/> <soapenv:Body> <arch:WS_TMNL_TASK_SR><root><WS_TMNL_TASK_SR> <arg0><![CDATA[<?xml version="1.0" encoding="UTF-8" ?><DBSET><ROW><COL NAME="APP_NO">77777</COL><COL NAME="TERMINAL_ID">77777</COL><COL NAME="TMNL_TASK_TYPE">05</COL><COL NAME="CONS_CHG_TYPE">05</COL><COL NAME="METER_FLAG">1</COL><COL NAME="CONS_NO">77777</COL><COL NAME="TG_ID">77777</COL><COL NAME="MP_NO">77777</COL><COL NAME="TYPE_CODE">01</COL><COL NAME="USAGE_TYPE_CODE">01</COL><COL NAME="NEW_TERMINAL_ID"></COL><COL NAME="ELEC_ADDR">四川省绵阳市游仙区梓棉乡葫芦村委会四社</COL><COL NAME="CONS_ID">40522489463</COL><COL NAME="CP_NO">77777</COL><COL NAME="WKST_APP_NO">202211456584</COL><COL NAME="TERMINAL_TYPE_CODE">05</COL></ROW></DBSET>]]></arg0> </WS_TMNL_TASK_SR></root></arch:WS_TMNL_TASK_SR> </soapenv:Body> </soapenv:Envelope> 这是请求的xml。然后这是它的报错信息org.apache.cxf.interceptor.Fault: Message part {"http://arch.service.general.ieslab.com/" } was not recognized. (Does it exist in service WSDL?),能否帮忙判断错误原因并帮忙解决
根据报错信息可以看出,该错误是由于服务端无法识别请求中的消息部分导致的。这可能是由于请求消息中的命名空间与服务端不匹配导致的。建议检查请求消息中的命名空间是否正确,并与服务端的命名空间是否匹配。如果命名空间匹配不上,可以将请求消息中的命名空间改为服务端的命名空间,然后重新发送请求。另外,还可以尝试从服务端获取 WSDL 文件,确定其中的命名空间是否正确。如果问题仍然存在,建议联系服务端的开发人员进行进一步排查。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)