2013-05-07 115 views
-1

我正在阅读XPath Number function的文档。与XPath number()函数混淆

数函数不应当用于转换的XML文档中的元素发生数字数据的,除非该元素是表示在一个中性语言格式数值数据的类型的(这将通常会被转换成语言特定的格式以呈现给用户)。另外,除非元素使用的语言无关格式与Number的XPath语法一致,否则不能使用数字功能

比四种基本类型以外的其他类型的对象转换为数字的方式,依赖于该类型

任何人都可以点我上面有哪些粗线意味着技术上?

回答

1

这意味着数()不能处理表示在区域设置相关的格式,如1'000'000数字的字符串。如果这听起来不必要的复杂,那可能是因为工作组对数字()是否应该处理本地化数字进行激烈辩论,决定不应该这样做,并将此文本作为其审议的化石证据。

+0

感谢您的回答。我也试过测试'boolean true转换为1;布尔值false被转换为0'(取自同一链接)。但是我得到了错误。这句话是什么意思? – 2013-05-07 07:53:25

+0

这意味着数字(2 = 2)的结果是1,并且数字(2 = 3)的结果是0. – 2013-05-07 22:12:58

+0

这完全理解,我的意思是说在XML节点的情况下,这将如何适合? – 2013-05-08 05:02:23

0

这意味着该方法不能被用于局部数值字符串转换为数字,例如:

1.200,20 

这是一个德国数字格式。只有像XPath specification中定义的数字字符串才能获得可靠的结果。所以,上面的数字必须是这样的:

1200.20