序列化.txt与.xml

时间:2012-04-06 14:50:07

标签: c# xml serialization

我一直在阅读有关序列化的内容,我真的不明白为什么我们使用XML文件而不是txt文件?我一直在尝试从txt文件中读取数据,它工作得很好。使用XML的原因是什么? 谢谢。

3 个答案:

答案 0 :(得分:2)

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库。

答案 1 :(得分:1)

首先,围绕xml(或json,或任何定义良好的序列化格式)有大量工具。另一方面,所有问题都已得到解答:

  • 我如何筑巢物品?
  • 我如何逃避角色?
  • 如何自动序列化?

另外,其他开发人员消耗数据的时间很少,因为每个人都理解这些商定的格式。

也就是说,自定义序列化显然可以更小(二进制表示,更短的语法等)或根据您的需求量身定制,但是您需要编写自己的所有内容,而且非常耗时。

答案 2 :(得分:1)

XML优先于原始文本的原因是XML是一种表示结构化数据的方式。这与对象图的序列化很好地匹配。另一方面,文本文件本质上是非结构化的,需要构成序列化的格式化标准