2010-06-23 82 views

回答

12

可能有很多原因:像任何其他文件格式,它有優點和缺點:

優點:

  • .NET本身支持序列化的對象到XML,並再次反序列化回。
  • 它比二進制格式或JSON對人眼更具可讀性和描述性
  • 它很容易根據模式進行驗證,以確保其格式正確。
  • 它可以用其他工具加載和分析。
  • 它可以很容易地與其他平臺/語言進行互換,不像原生.Net二進制序列化格式
  • 它可以被轉換,並且你可以在其上運行xpath。

缺點:

  • 它比任一天然的.Net二進制序列化格式更詳細的,或JSON
  • 它沒有有關被反序列化爲xml的類存儲類型信息,而一種本地二進制格式。
3

標準線是「爲人類可讀計算機可讀數據」

但其他格式,如JSON是更簡潔和同樣的通用性。

+0

JSON是否比XML更容易解析? – 2010-06-23 23:13:40

+0

我不會說*更容易*,但肯定不太詳細。 – 2010-06-23 23:14:21

+3

不同意JSON。 JSON對於機器閱讀和容易破解來說只不錯。 – 2010-06-23 23:16:07

2

我們用它來保存我們的機器配置文件。我們在現場有很多機器配置了許多不同的方式。我們可以使用DataContract或Xml序列化器,這很容易實現。

對我們來說,好處是我們可以輕鬆區分這些文件來查看機器之間的差異。

9

這是一個可移植的可解析標準。

所以,如果你有數據需要被幾個不同的程序(也可能是人)讀取,你可以使用XML。

將(通過XSLT)驗證和轉換爲其他格式也相對容易。

很明顯,您可以使用其他格式,但這並不會阻止您使用XML。

5

反轉你的問題可能是一個好主意:什麼時候用XML來保存信息不是好的?

  • 當您只需頻繁追加數據時,規範示例就是日誌文件。 XML將要求您解析整個文檔,並找到正確的位置,爲了不打破合式結構

  • 當你只需要在文件中查詢某些項目頻繁插入。隨機訪問文件的一部分可能不會有效。這可能會更好地處理一個格式,該格式將經常訪問的信息存儲在衆所周知的偏移處,以便不需要解析該文件。

  • 存儲非分層順序數據時,通常會有更好的XML替代方法。考慮圖像,音頻或視頻文件格式。

相關問題