檢查XmlDeclaration節點的XmlDocument的更有效方法是什麼?如何在XmlDocument C中檢查XmlDeclaration C#
5
A
回答
6
你以後有什麼樣的「效率」?表達的效率,還是執行時的效率?這裏有一個LINQ查詢其很快發現聲明:
XmlDeclaration declaration = doc.ChildNodes
.OfType<XmlDeclaration>()
.FirstOrDefault();
我強烈懷疑,這將是足夠的效率。有可能您可以只是測試第一個子節點是否爲XmlDeclaration
...我不是認爲其他任何東西都可以在它之前出現。
如果有任何使用LINQ to XML的可能性,那麼它變得更容易 - 您只需使用XDocument.Declaration
屬性。
8
要檢查它有一個:
bool hasDec = doc.FirstChild.NodeType == XmlNodeType.XmlDeclaration;
爲了得到它,如果它有一個:
XmlDeclaration dec = doc.FirstChild as XmlDeclaration;
請記住,沒有內容的允許之前,XML聲明(除非有BOM,這不被視爲內容,而是流中的編碼假象,所以不會有相應的節點)。
相關問題
- 1. 如何使用XmlDocument/XmlDeclaration添加自定義XmlDeclaration?
- 2. 將XmlDocumentType和XmlDeclaration插入到XmlDocument
- 3. C#的XmlDocument節點
- 4. C#XMLDocument到DataTable?
- 5. C#XMLDocument編碼?
- 6. 如何檢查在c#
- 7. 如何在C++中檢查null類
- 8. 如何使用C#和XmlDocument多次AppendChild?
- 9. 如何使用c#更新XMLDocument?
- 10. 如何在C#中使用XmlDocument編寫數字?
- 11. 檢查在C#
- 12. 檢查在C#
- 13. 如何在XmlDocument中處理XML中的命名空間c#
- 14. 在C#中獲取XmlDocument的數據
- 15. [C#]在XMLDocument中添加XSL引用
- 16. 如何檢查GridView中存在的CheckBoxList檢查值asp.net C#
- 17. 如何檢查用C
- 18. 如何檢查文本C#
- 19. C#如何檢查是否
- 20. 如何檢查1/a == 1/b + 1/c在C++中?
- 21. 在c中檢查時間
- 22. 在C中檢查閏年#
- 23. 如何檢查C++中的符號
- 24. 如何檢查C#中的偶數?
- 25. 如何檢查Objective-C中的類?
- 26. 如何檢查Qt中的C++類型
- 27. 如何檢查Visual C++中的vtable?
- 28. 如何檢查c中fscanf的行爲?
- 29. 如何檢查是否在C
- 30. 如何檢查是否GetPropertyItem在C#
你記得是對的,聲明在它之前不能包含任何東西 - 包括空格 - 允許在表達和執行中提高效率。 – 2010-08-19 22:41:19