【发布时间】:2013-02-18 12:35:06
【问题描述】:
我正在处理一个 VB.net 08 项目,但代码有一个奇怪的问题。
SyncItemValues(i) = Convert.ToDouble(werte(i-1))
而werte(i) 是一个字符串列表。
SyncItemValues(i) As Object
werte(i) 填充了从 MySql 数据库导入的整数和实数值。
实际值是例如4.6; 5.7; ...
所以小数分隔符是一个“.”
问题是转换函数解释“。”作为组分隔符。 所以它将 4.5 转换为 45 这是错误的。
如果我使用“,”作为小数分隔符或将文化从 DE 更改为 US,则结果是正确的。
奇怪的是,到目前为止,该项目一直在进行这种转换,而这些问题以前从未发生过。 对项目进行了几处更改,但从未触及过转换。 一个 dll 已被更改,我现在问自己的问题是这种交换是否会导致奇怪的行为。
我完全不知道出了什么问题。有什么想法吗?
【问题讨论】: