我一直在閱讀關於序列化的內容,我不明白爲什麼我們使用XML文件而不是txt文件,例如?我一直在嘗試從txt文件讀取數據,並且它工作得很好。什麼是使用XML的原因? 謝謝。序列化.txt與.xml
回答
xml文件基本上是一個文本文件,遵循xml格式化的規則。
xml文件的主要優點是它們是分層的。考慮例如以下XML:
<carOwners>
<person name="Bill">
<car brand="Audi"/>
</person>
<person name="Charlie">
<car brand="volvo"/>
<car brand="saab"/>
</person>
</carOwners>
這裏我們有兩種不同的數據類型:人和汽車。通過XML的層次結構,很容易代表每輛車的擁有者。
當然可以在不使用XML的情況下做類似的事情,但是你必須自己去做大量的字符串操作來解析信息。使用XML,每種主要編程語言至少有一個xml庫可用。
謝謝你的回答,我不知道在C#中有一個XML庫是使用該庫有用嗎? – idish 2012-04-06 15:12:01
有幾個。我通常使用[LINQ to XML](http://msdn.microsoft.com/zh-cn/library/bb387061.aspx)庫。 – 2012-04-06 15:51:50
其中之一就是xml(或者json,或者任何定義好的序列化格式)都有大量的工具。另一方面,所有問題已經得到解答:
- 如何嵌套物品?
- 我如何轉義字符?
- 我該如何自動序列化?
另外,由於每個人都瞭解這些商定的格式,所以其他開發人員幾乎不需要花費您的數據。也就是說,自定義序列化顯然可以更小(二進制表示法,更短的語法等),也可以根據您的需要量身定製,但是您需要編寫自己的所有內容,這非常耗時。
XML優於原始文本的原因是XML是一種表示結構化數據的方式。這與對象圖的序列化很好地匹配。另一方面,文本文件本質上是非結構化的,並且需要構建用於序列化的格式化標準。
- 1. XML序列化與兒童
- 2. XML序列化與長xmls
- 3. XML序列化與XML解析
- 4. WCF XML和序列化與列表
- 5. XML序列化
- 6. XML序列化
- 7. XML序列化
- 8. XML序列化
- 9. XML序列化
- 10. XML序列化
- 11. XML序列化
- 12. XML序列化
- 13. 無法反序列化以前序列化的XML與c#xmlserializer
- 14. 我如何序列化/反序列化XML與Woodstox StAX 2
- 15. XML序列化和肥皂序列化
- 16. C#XML序列化/反序列化
- 17. XML序列化:對象未序列化
- 18. 多態XML序列化/反序列化
- 19. 部分xml序列化/反序列化
- 20. C#Xml序列化和反序列化
- 21. C#XML序列化/反序列化
- 22. 的XML C#XML序列化
- 23. 自定義XML序列化與屬性
- 24. 與XML序列化的問題
- 25. 反序列化的XML與DataContractSerializer的
- 26. 的Xml反序列化與元DATAS
- 27. java序列化與xml定義
- 28. 鍵值對序列化與JSON,XML等
- 29. DefaultValueAttribute與XML序列化衝突
- 30. c#xml序列化與XmlAttribute標記
我不相信無論您使用.XML還是.TXT,它都會產生影響。畢竟,唯一的區別在於擴展 - 無論存儲在哪裏,序列化都會創建相同的輸出。 – aboveyou00 2012-04-06 14:56:01
也有很多二進制serialiaztion格式... – 2012-04-06 14:58:07