那位高手帮忙把这个XML字符串解析下
<?xml version="1.0" encoding="UTF-8" ?>用C#解析,帮帮忙!!! --------------------编程问答-------------------- 用System.Xml.XmlDocument 来解析就是
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:s="http://www.w3.org/2001/XMLSchema">
<SOAP-ENV:Body>
<GetNCCBasicDataResponse xmlns="http://tempuri.org">
<GetNCCBasicDataResult>
<s:schema id="NCCCTLocBasicData" targetNamespace="http://www.dhcc.com.cn/publicdata/WebServiceYZNurse" xmlns="http://www.dhcc.com.cn/publicdata/WebServiceYZNurse" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<s:element name="NCCCTLocBasicData" msdata:IsDataSet="true">
<s:complexType>
<s:choice maxOccurs="unbounded">
<s:element name="GetHosCtlocData">
<s:complexType>
<s:sequence>
<s:element name="SERIAL_NO" type="s:string" minOccurs="0" />
<s:element name="DEPT_CODE" type="s:string" minOccurs="0" />
<s:element name="DEPT_NAME" type="s:string" minOccurs="0" />
<s:element name="DEPT_ALIAS" type="s:string" minOccurs="0" />
<s:element name="IS_DEL" type="s:string" minOccurs="0" />
</s:sequence>
</s:complexType>
</s:element>
</s:choice>
</s:complexType>
</s:element>
</s:schema>
<diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
<NCCCTLocBasicData xmlns="http://www.dhcc.com.cn/publicdata/WebServiceYZNurse">
<GetHosCtlocData diffgr:id="GetHosCtlocData1" msdata:rowOrder="0" xmlns="">
<SERIAL_NO>1</SERIAL_NO>
<DEPT_CODE>1010000</DEPT_CODE>
<DEPT_NAME>内科</DEPT_NAME>
<DEPT_ALIAS>NK</DEPT_ALIAS>
<IS_DEL>0</IS_DEL>
</GetHosCtlocData>
<GetHosCtlocData diffgr:id="GetHosCtlocData2" msdata:rowOrder="1" xmlns="">
<SERIAL_NO>2</SERIAL_NO>
<DEPT_CODE>1010100</DEPT_CODE>
<DEPT_NAME>内科办公室</DEPT_NAME>
<DEPT_ALIAS>NKBFS</DEPT_ALIAS>
<IS_DEL>0</IS_DEL>
</GetHosCtlocData>
<GetHosCtlocData diffgr:id="GetHosCtlocData3" msdata:rowOrder="2" xmlns="">
<SERIAL_NO>3</SERIAL_NO>
<DEPT_CODE>1010200</DEPT_CODE>
<DEPT_NAME>内科1病房</DEPT_NAME>
<DEPT_ALIAS>NK1BF</DEPT_ALIAS>
<IS_DEL>0</IS_DEL>
</GetHosCtlocData>
<GetHosCtlocData diffgr:id="GetHosCtlocData4" msdata:rowOrder="3" xmlns="">
<SERIAL_NO>4</SERIAL_NO>
<DEPT_CODE>1010201</DEPT_CODE>
<DEPT_NAME>内科1</DEPT_NAME>
<DEPT_ALIAS>NK1</DEPT_ALIAS>
<IS_DEL>0</IS_DEL>
</GetHosCtlocData>
<GetHosCtlocData diffgr:id="GetHosCtlocData5" msdata:rowOrder="4" xmlns="">
<SERIAL_NO>5</SERIAL_NO>
<DEPT_CODE>1010400</DEPT_CODE>
<DEPT_NAME>内科门诊</DEPT_NAME>
<DEPT_ALIAS>NKMZ</DEPT_ALIAS>
<IS_DEL>0</IS_DEL>
</GetHosCtlocData>
<GetHosCtlocData diffgr:id="GetHosCtlocData6" msdata:rowOrder="5" xmlns="">
<SERIAL_NO>6</SERIAL_NO>
<DEPT_CODE>1010401</DEPT_CODE>
<DEPT_NAME>胸内门诊</DEPT_NAME>
<DEPT_ALIAS>XNMZ</DEPT_ALIAS>
<IS_DEL>0</IS_DEL>
</GetHosCtlocData>
</NCCCTLocBasicData>
</diffgr:diffgram>
</GetNCCBasicDataResult>
</GetNCCBasicDataResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
--------------------编程问答--------------------
--------------------编程问答--------------------
System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
doc.Load("~/path/temp.xml");
System.Xml.XmlNodeList nodes = doc.GetElementsByTagName("GetHosCtlocData");
foreach (System.Xml.XmlNode node in nodes)
{
System.Xml.XmlNodeList cnodes = node.ChildNodes;
//再foreach解析下面的节点
//<SERIAL_NO>5</SERIAL_NO>
//<DEPT_CODE>1010400</DEPT_CODE>
//<DEPT_NAME>内科门诊</DEPT_NAME>
//<DEPT_ALIAS>NKMZ</DEPT_ALIAS>
//<IS_DEL>0</IS_DEL>
}
可以
补充:.NET技术 , C#