作者reptile0426 ( )
看板C_Sharp
標題[問題] 抓取XML的問題
時間Mon Feb 25 11:56:52 2008
我用XPATH想抓取XML下面的節點,
但是開頭要是有xml name space就無法抓到節點
只要我把xmlns殺掉,一切正常
請問前輩們有遇過這樣的問題嗎?怎麼解決呢?
<beApp5101
xmlns="http://tempuri.org/beApp5101.xsd">
<data1>
....
</data1>
<data2>
....
</data2>
</beApp5101>
程式碼:
static void Main(string[] args)
{
string filename = "data.xml";
XPathDocument doc = new XPathDocument(filename);
XPathNavigator nav = doc.CreateNavigator();
XPathExpression expr;
string xx = "/beApp5101/Resident_Main";
expr = nav.Compile(xx);
XPathNodeIterator itera = nav.Select(expr);
Console.WriteLine(itera.Count);
while (itera.MoveNext())
{
XPathNavigator nav2 = itera.Current.Clone();
nav2.MoveToFirstChild();
Console.Write(nav2.Name+":");
Console.WriteLine( nav2.Value);
nav2.MoveToNext();
Console.WriteLine(nav2.Value);
nav2.MoveToNext();
Console.WriteLine(nav2.Value);
nav2.MoveToNext();
Console.WriteLine(nav2.Value);
nav2.MoveToNext();
Console.WriteLine(nav2.Value);
nav2.MoveToNext();
Console.WriteLine(nav2.Value);
}
Console.Read();
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.25.101.33
※ 編輯: reptile0426 來自: 163.25.101.33 (02/25 11:57)
→ reptile0426:因為是要結合別系統所產生出來的XML,我無法對產生XML 02/25 11:59
→ reptile0426:的程式碼做修改,不然可以把NAMESPACE給CANCEL掉 02/25 11:59
→ reptile0426:所以上來請問各位~謝謝 02/25 12:00
※ 編輯: reptile0426 來自: 163.25.101.33 (02/25 12:33)