描述:利用XmlTextWriter類來格式化XML非常簡單地達到使XML數據地可讀性增強。
XML許多優點中一個非常主要地優點就是:它能夠被人類和計算機方便地讀取。XML開發人員可以用任何文本編輯器打開或編輯XML數據。盡管計算機可以輕松讀取沒有縮進和格式化地XML文檔,但對人類來說,看起來就有點費勁了。比如下面地文檔:
http://XML.luohuedu.Net/
【孟憲會之精彩世界】之
XML開發者園地討論XML技術和Web技術地專業站點。
http://lucky_elove.www1.dotnetplay
ground.com/
【孟憲會之精彩世界】之.Net開發者園地討論.Net技術和應用的專業站點。
為了增強可讀性,我們可以使用.Net框架下的XMLTextWriter類輕松實現。
使用XmlTextWriter類的Formatting和Indentatio屬性可以方便地實現格式的縮進和層次關系,只需要使用Formatting.Indented和Indentation屬性,如果Indentation屬性沒有設置值,則默認是2個空格位置的縮進。也可以使用IndentChar屬性來用其它的字符填充縮進的位置。下面就是利用XmlTextWriter把數據裝載進XmlDocument的DOM對象,然後用XmlDocument類的WrriteTo()方法直接把數據寫進XMLTextWriter中。
VB.Net代碼:
Dim filePath As String = "c:\TestFormat.xml"
Dim writer As XmlTextWriter = New XmlTextWriter(filePath, Encoding.UTF8)
writer.Formatting = Formatting.Indented
writer.Indentation = 4
Dim doc As XmlDocument = New XmlDocument()
doc.LoadXML("" + _
"http://XML.luohuedu.Net/" + _
"【孟憲會之精彩世界】之" + _
"XML開發者園地討論XML技術和Web技術地專業站點。" + _
"http://lucky_elove.www1.dotnetplay" + _
"ground.com/" + _
"【孟憲會之精彩世界】之.Net開發者園地" + _
"討論.Net技術和應用的專業站點。" + _
"")
doc.WriteTo(writer)
writer.Close()
C#代碼:
string filePath ="c:\\TestFormat.xml";
XmlTextWriter writer = new XmlTextWriter(filePath,Encoding.UTF8);
writer.Formatting = Formatting.Indented;
writer.Indentation = 4;
XmlDocument doc = new XmlDocument();
doc.LoadXML(@"
http://XML.luohuedu.Net/
【孟憲會之精彩世界】之
XML開發者園地討論XML技術和Web技術地專業站點。
http://lucky_elove.www1.dotnetplay
ground.com/
【孟憲會之精彩世界】之.Net開發者園地
討論.Net技術和應用的專業站點。
");
doc.WriteTo(writer);
writer.Close();
下面就是輸出的結果:
http://XML.luohuedu.Net/
【孟憲會之精彩世界】之XML開發者園地
討論XML技術和Web技術地專業站點。
http://lucky_elove.www1.dotnetplayground.com/
【孟憲會之精彩世界】之.Net開發者園地
討論.Net技術和應用的專業站點。
哈哈,看,多整齊啊:)~!