簡體   English   中英

檢查xml節點是否存在?

[英]Check xml node is exist or not?

我想在*.xml文件中檢查給定節點是否存在。 我嘗試:

 string language = node.SelectSingleNode("language") != null ? (node.SelectSingleNode("language").Value == "en" ? "en-US" : "en-US") : "en-US";

但我認為它只檢查節點值。在某些xml文件中我沒有稱為language節點因此它給出了一個Null Reference Ex.. 如何檢查給定節點是否存在於*.xml文件中? 謝謝。

有些東西是null 您正在檢查選定的“語言”節點是否為null ,那么node本身是否為null

將代碼擴展到更多行,嵌套?:代碼不容易理解,你不得不重復默認值和函數調用。

使用變量,例如node.SelectSingleNode("language")變量,這樣你就不會這樣做兩次。 這將幫助您找到錯誤。

string language = "en-US"; //default
if(node!=null)
{
  var langNode = node.SelectSingleNode("language");
  if(langNode!=null)
  {
    //now look at langNode.Value, and overwrite language variable, maybe you wanted:
    if(langNode.Value != "en")
    {
       language = langNode.Value;
    }
  }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM