文字列に大きなxmlドキュメントがあります。 xmlが整形式であるかどうかを判断する最良の方法は何ですか?XMLが整形式であるかどうかを判断する方法
7
A
答えて
13
何か:
static void Main() {
Test("<abc><def/></abc>");
Test("<abc><def/><abc>");
}
static void Test(string xml) {
using (XmlReader xr = XmlReader.Create(
new StringReader(xml))) {
try {
while (xr.Read()) { }
Console.WriteLine("Pass");
} catch (Exception ex) {
Console.WriteLine("Fail: " + ex.Message);
}
}
}
あなたはを使用し、その後、XSDに対してチェックする必要がある場合。
4
パーサーで実行してください。それは適切なチェックを実行します(OKかどうかを解析します)。
大きな文書(示されている)の場合は、文書をメモリに保存しないため、イベントベースのパーサー(例:SAX)が適切です。
この種のものをチェックするためにXMLユーティリティを使用することは、しばしば便利です。私はXMLStarletを使用します。これはXMLチェック/操作用のコマンドラインセットです。
3
XmlReaderのは、それがデータをストリームすべきとして良い選択が
1
がConformanceLevel .Documentが設定されているXmlReaderSettingsでXmlReaderを使用してみてください(一度に全体のxmlをロードしない)ようです。以下のような
関連する問題
- 1. Lineが矩形を通過するかどうかを判断する方法
- 2. XSDスキーマが整形式であるかどうかを確認する方法?
- 3. タイプがコレクションのタイプであるかどうかを判断する方法は?
- 4. C++オブジェクトがtime_tであるかどうかを判断する方法
- 5. 子が無しであるかどうかを判断する方法
- 6. Javascriptオブジェクトがイベントであるかどうかを判断する方法は?
- 7. Django - モデルクラスが抽象であるかどうかを判断する方法
- 8. ZonedDateTimeが「今日」であるかどうかを判断する方法は?
- 9. llvm:Typeがi8 *タイプであるかどうかを判断する方法?
- 10. 列が符号なしであるかどうかを判断する方法?
- 11. ServletRequestがPreflightRequestであるかどうかを判断する方法?
- 12. バックエンドデータベースがHANA DBであるかどうかを判断する方法は?
- 13. location.hashが戻るボタンかどうかを判断する方法
- 14. Pythonで2つのシンボリックブール式が等しいかどうかを判断する方法はありますか?
- 15. Oracle:列が "ブール値"かどうかを判断する方法
- 16. パスワードが必要かどうかを判断する方法
- 17. Windowsフォームのテキストボックスにフォーカスがあるかどうかを判断する方法
- 18. コントロールがフォームCの外にあるかどうかを判断する方法#
- 19. ネイティブJavaScriptオブジェクトにプロパティ/メソッドがあるかどうかを判断する方法
- 20. あなたがBuddypressアクティビティストリームにいるかどうかを判断する方法
- 21. ポイントがQuad2DCurveにあるかどうかを判断する方法
- 22. RSSフィードがあるかどうかを判断する最も良い方法
- 23. SSD上であるかどうかを判断するクロスプラットフォームの方法は?
- 24. デバイスにタッチスクリーンがあるかどうかを判断する
- 25. モデル式にインターセプトだけがあるかどうかを判断するもっとも簡単な方法
- 26. オペレーティングシステムがMacであるかどうかを判断
- 27. URLがローカルファイルパスであるかリモートファイルパスであるかを判断する方法
- 28. STDINがシステムコールを通じてTTYであるかどうかを判断する方法はありますか?
- 29. React - コンポーネントがステートレスで機能するかどうかを判断する方法?
- 30. varがjavascriptのelementFinderオブジェクトであるかどうかを判断する方法はありますか?