Webページに表示するためのInnerXmlプロパティを出力したいとします。私は様々なタグのインデントを見たいと思います。これを行う簡単な方法はありますか?C#で表示するためのXmlDocumentを簡単に書式設定できますか?
答えて
これはちょっと前にちょうどこれを行うためにまとめたクラスです。
XMLを文字列形式で処理していることを前提としています。 `XDocument.Parse(doc.InnerXml:倍
public static class FormatXML
{
public static string FormatXMLString(string sUnformattedXML)
{
XmlDocument xd = new XmlDocument();
xd.LoadXml(sUnformattedXML);
StringBuilder sb = new StringBuilder();
StringWriter sw = new StringWriter(sb);
XmlTextWriter xtw = null;
try
{
xtw = new XmlTextWriter(sw);
xtw.Formatting = Formatting.Indented;
xd.WriteTo(xtw);
}
finally
{
if(xtw!=null)
xtw.Close();
}
return sb.ToString();
}
}
拡張メソッドとして追加するとさらに簡単になります:) – Urda
私はあなたを愛しています!!!!!!!!!!!!!! – ChandlerPelhams
スポットあり、ありがとうございました:) –
コードフォーマッタでこれを実行できるはずです。まずxmlをページにhtmlエンコードする必要があります。
Googleは、XMLといくつかのプログラミング言語を視覚化できるa nice prettifyerを持っています。 Webページ上のXML文書の内容を表示するために
<pre class="prettyprint">
<link href="prettify.css" type="text/css" rel="stylesheet" />
<script type="text/javascript" src="prettify.js"></script>
</pre>
基本的には、このようなpreタグにあなたのXMLを置きます。
EDIT:XML WebサーバーコントロールのDocumentプロパティにXmlDocument全体を渡して表示する必要があります。 InnerXmlプロパティを使用する必要はありません。
あなたが唯一のコクーンであり、xternallプロセスを起動する余裕があれば、HTML Tidyコンソールツール(〜100K)でxmlファイルを処理できます。
コードは次のとおりです。
tidy --input-xml y --output-xhtml y --indent "1" $(FilePath)
あなたは特別な文字を取り除く一度、あなたはWebページ上idented文字列を表示することができます。
このような出力を行う再帰関数を作成することも簡単です。ルートから開始して子ノードの次の再帰ステップに入り、識別子を新しい新しい再帰呼び出しのパラメータとして渡すだけです。
無料のASP.NET用Actipro CodeHighlighterをチェックしてください。これはXMLと他のフォーマットをきちんと表示できます。
実際にXMLをフォーマットすることにもっと興味がありますか?次に、XmlTextWriterを見てみましょう.Format(インデントの有無)やインデントレベルなどを指定してから、XMLを書き出すことができます。 MemoryStreamを読み込んでそこから文字列に戻して表示します。設定XmlWriterSettingsと
マルク・
使ってXmlTextWriterはので、インデントが有効になっています。結果の文字列を画面に書き込む場合は、StringWriterを「一時記憶域」として使用できます。
- 1. 表形式のデータを簡単に表示できますか?
- 2. jQueryで数値を書式設定する簡単な方法
- 3. PythonでOSXでMySQLに書き込むための設定が簡単
- 4. XmlDocumentクラスが書式設定を削除しています。C#、.NET
- 5. Androidで書式設定されたテキストを表示するための推奨アプローチですか?
- 6. 画像とテキストを含むページをJavaで表示するための最も簡単な文書形式
- 7. メール、レポートを書式設定するためのC++のテキストテンプレートライブラリ
- 8. PHPで表を書式設定する
- 9. 要素のoffsetWidthを簡単に「設定」できますか?
- 10. cでnullable decimalを丸めて書式設定する#
- 11. 4桁のみ表示するための倍精度書式設定
- 12. Rでテキスト表示を書式設定する方法Shiny?
- 13. SQL Serverから簡単な書式設定
- 14. VBAによる条件付き書式設定または書式設定
- 15. 数値の書式設定の簡単な質問
- 16. 設定ファイルで簡単な数式を評価する方法
- 17. J2MEのキャンバスに書式設定されたテキストを表示
- 18. 単純な書式設定のためのVBAマクロループ
- 19. 簡単な日付書式設定の質問yyyymmdd
- 20. 簡単な数式表現でPHPコードを書くには?
- 21. DebuggerDisplayで表示されるテキストで文字列の書式設定を使用できますか?
- 22. UITableView内に書式設定されたテキストを表示
- 23. 表形式データの表示/書式設定
- 24. Write-Hostで書式設定された出力を表示する方法
- 25. json bodyのカテゴリとサブカテゴリを表示するためにC#オブジェクトの書式を設定するにはどうすればよいですか?
- 26. ファイルシステムツリーを表示するために使用されるJTreeのラベルを書式設定する
- 27. HTMLページのCSS書式でexcelするためにタグを表示する
- 28. siverlightで単語文書を表示できますか?
- 29. x64 Visual Studio 2010でのアセンブリの強調表示/書式設定
- 30. 春にローカライゼーションのためにhtmlで文字列を書式設定する
が経つと、私たちは今、XMLにLINQを持って、あなたはインデントを使用してXMLをプリントアウトする' System.Xml.Linq'名前空間から 'XDocument'クラスを使用することができます) '。 – jwaliszko