C 解析帶字首的Xml節點內容

2021-09-21 03:31:14 字數 3162 閱讀 3177

他的結構是這樣子的:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

xmlversion="1.0"encoding="utf-8"?>

<soap-env:envelopexmlns:soap-env="">

<soap-env:header>

<transactionid>110000000001

<servicetype>/sms/mt

<soap-env:body>

<gatewayid>ynmc

<dstid>15125664368

<srcid>099879

<feeid>15125664368

<linkid/>

<msgcontent>哈哈

<serviceid>ayn3913101

<msgid>1234

<committime>201311130101022

比如我們要取msgcontent節點下的內容,我們直接去取是會報錯的。比如:

12

3

xmldocument doc =newxmldocument();

doc.load("test.xml");

stringvalue = doc.selectsinglenode("/soap-env:envelope/soap-env:body/msgcontent").innertext;

這裡value會發生異常,如圖:

根據錯誤提示,已經提醒我們需要命名空間管理器。

1

2

3

4

5

6

7

8

9

10

xmldocument doc =newxmldocument();

doc.load("test.xml");

xmlelement root = doc.documentelement;

stringnamespace = root.namespaceuri;

xmlnamespacemanager nsmgr =newxmlnamespacemanager(doc.nametable); ;

nsmgr.addnamespace("soap-env", namespace);

stringvalue = doc.selectsinglenode("/soap-env:envelope/soap-env:body/msgcontent", nsmgr).innertext;

console.writeline(value);//輸出:哈哈

這時我們加上了xmlnamespacemanage進行處理,成功的獲取到了我們想要的內容。

PHP解析XML,讀取節點內容

php與xml聯絡緊密,下面是乙個較簡單的解析xml節點資料的例子,示例中自定義有乙個xml樣例檔案 通過php將依次讀取出xml節點中的id name和email資料,是讀取較大的xml檔案的前提,新手的話,那就更應該參考了 01 02 定義乙個xml樣例檔案 03 xml string 1.0 ...

C 讀取帶namespace的xml內容

今天做乙個第三方資料對接,從第三方系統獲取一些內容之後進行處理。不過遇到了乙個問題,返回的內容是包含在xml節點中的,要從xml節點中把有效內容提取出來,因為xml格式有些特殊,用之前的xmldocument的一些 有報錯。xml內容如下 有效內容.帶了namespace,因此需要對原有的 進行一些...

C 關於帶命名空間的xml解析

本意是想獲取所有的xml標籤的,結果為了單個標籤的獲取查了挺久 xml文件 1hhh bbb第一步,載入xml文件 string uri dd.xml xmlreader xr xmlreader.create uri xmldocument doc new xmldocument doc.load...