以 XML 格式写入 2D 点

2024-01-04

在 XML 中编写 2D 点数组时,我得到以下输出:

<Vertices count="42">
  <V>
    <X>110</X>
    <Y>0</Y>
  </V>
  <V>
    <X>109.5105</X>
    <Y>3.0901</Y>
  </V>
  <V>
    <X>108.0901</X>
    <Y>5.8778</Y>
  </V>
  ...

在内部,我们正在讨论编写它们的最佳布局/标签命名。以下是其他几个选项:

<Vertices>
  <Point>110, 0</Point>
  <Point>109.5105, 3.0901</Point>
  <Point>108.0901, 5.8778</Point>
  ...

or

<Vertices>
  <item>110, 0</item>
  <item>109.5105, 3.0901</item>
  <item>108.0901, 5.8778</item>
  ...

假设您需要解析此 XML 文件:

  • 您最喜欢哪种布局?
  • 根据 XML 规范,哪种布局更正确?

Thanks.


这是高度基于意见的,所以这是我的:

我会选择第一种方法,原因如下:

  1. 这种数据格式可能只在内部使用,因此无论漂亮与否,只要机器可读即可。
  2. 它很容易扩展。想要 Z 坐标吗?好吧,添加另一个元素。这个有可能不破坏现有功能!这意味着需要 Z 坐标的应用程序版本仍然可以读取不包含 Z 坐标的 XML 文件并假定 Z 为 0。无法处理 Z 坐标的应用程序版本将直接忽略它。
  3. 它很容易验证。您可以假设每个坐标都包含一个浮点值,可以使用标准方法进行验证,例如XSD http://www.w3schools.com/xml/schema_intro.asp。其他格式需要更多关于每个元素内容的知识,这些知识可能不包含在标准工具中。

格式化的另一个选项可能是这样的:

<vertices>
    <vertex x="0.123" y="1.443" />
    <vertex x="1.321" y="0.334" />
</vertices>

这种格式也有同样的优点,只是它更容易被人类阅读。


编辑:我忘记了,对于解析来说,您的第一个建议(以及我上面给出的那个)比您建议的其他两种格式要容易得多,这两种格式需要对每个点进行另一个字符串分割/修剪操作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

以 XML 格式写入 2D 点 的相关文章

随机推荐