如:
<?xml version="1.0" encoding="UTF-8"?><SwInt:HandleRequest> <SwInt:RequestHandle><Document xmlns='urn:swift:xsd:swift.if.ia$setr.004.001.02'> <setr.004.001.02> <MstrRef> <Ref>M060906000009</Ref> </MstrRef> </setr.004.001.02> </Document> </SwInt:RequestHandle></SwInt:HandleRequest>现在只要<document>...</document>这段xml
应该怎么做,请大家帮忙,急,谢谢
<?xml version="1.0" encoding="UTF-8"?><SwInt:HandleRequest> <SwInt:RequestHandle><Document xmlns='urn:swift:xsd:swift.if.ia$setr.004.001.02'> <setr.004.001.02> <MstrRef> <Ref>M060906000009</Ref> </MstrRef> </setr.004.001.02> </Document> </SwInt:RequestHandle></SwInt:HandleRequest>现在只要<document>...</document>这段xml
应该怎么做,请大家帮忙,急,谢谢
假如采取这样方法,我怎样获取key1,key2的值
GetXml(int star, int end)
{
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load(@"c:\test.xml");
XmlNodeList nodelist = xmldoc.GetElementsByTagName["Document"];
for(int i=0;i<nodelist.Length-1;i++)
{
if (Convert.ToInt32(nodelist[i].InnerText) >=star || Convert.ToInt32(nodelist[i].InnerText)<=end)
........................
}
}调用的时候GetXml(0,0)
using System.Xml;
string xmlpath = Server.MapPath("XMLFile1.xml");
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load(xmlpath);
XmlNode node = xmldoc.SelectSingleNode("//Document"); //从根开始任意的document节点.如果你确定xml只有一个Document节点,那么就可以用这个xpath.如果还有其他的Document节点,那么就要修改以下xpath
string a=node.OuterXml;
Response.Write("<script>alert('" + a + "')</script>");
以上是真实xml,我所要的内容就是<document>.....</document>他们之间所有的内容,能否采用下面方法从上面的xml中去截取<document>..</document>的值
public string getMiddle(string request, string key1, string key2) { return request.Substring(request.IndexOf(key1) + key1.Length, request.IndexOf(key2) - request.IndexOf(key1) - key1.Length); }
那串xml实际上是从数据库中取出,他是一串字符串,情大家给予帮忙,谢谢~!
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load(xmlpath);
XmlNode node = xmldoc.SelectSingleNode("//Document"); //从根开始任意的document节点.如果你确定xml只有一个Document节点,那么就可以用这个xpath.如果还有其他的Document节点,那么就要修改以下xpath
string a=node.OuterXml;
Response.Write("<script>alert('" + a + "')</script>");使用上面的代码,node值为空
<?xml version="1.0" encoding="utf-8" ?>
<HandleRequest >
<RequestHandle >
<Document>
<setr.004.001.02 >
<MstrRef >
<Ref >M060906000009 </Ref >
</MstrRef >
</setr.004.001.02 >
</Document >
</RequestHandle >
</HandleRequest >是没有名空间的.
to:lz,
传过是字符串而不是xml文件,你用substring截取也是对了. 我前面回复的只是提醒你可能出错的地方了.没别的意思,别误会
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load(xmlpath); System.Xml.XmlNamespaceManager nameManage = new System.Xml.XmlNamespaceManager(xmldoc.NameTable);
nameManage.AddNamespace("SwInt", "");
XmlNode node = xmldoc.SelectSingleNode("/HandleRequest/RequestHandle/RequestPayload/Document", nameManage);
string a=node.OuterXml;
Response.Write(" <script >alert( '" + a + " ') </script >");