我应该使用哪种XML数据类型用于货币/货币?

Zac*_*zic 11 java xml currency data-storage

在阅读了几个关于用于货币/货币的Java数据类型的问题之后,我决定使用int/long方法,其中将货币/货币的值存储为最低单位(例如美分).

这是否也适用于存储数据(以XML格式)?

我想到的第一件事就是不,因为它在存储数据时只会被"解析"成XML十进制格式,而在读取数据时会再次"解析"回来.

我欢迎任何建议,因为我是新手.

Mic*_*Kay 9

很难给你一个设计,对需求的贡献如此之少,但如果没有货币,我绝不会把钱存入XML:

<amount currency="GBP">230.45</amount>
Run Code Online (Sandbox Code Playgroud)

但如果你在美国,如果你敢于建议他们处理多种货币,那么人们可能会像对待来自外太空的人那样对待你,所以你的里程可能会有所不同......

我认为对你是否设计好XML的一个很好的考验是:人类读者是否会在没有达到文档的情况下正确猜出这意味着什么?不是每个人都同意这种要求的观点,这有时是不切实际的.但省略小数点只是要求在线的某处错误处理数据.


Cri*_*ris 7

我用过这个

<xsd:simpleType name="money">
      <xsd:restriction base="xsd:decimal">
         <xsd:fractionDigits value="2"/>
      </xsd:restriction>
</xsd:simpleType>
Run Code Online (Sandbox Code Playgroud)