【发布时间】:2010-12-01 15:20:23
【问题描述】:
我目前正在将 vb 和 vb.net 转换为 c#,但有一个问题。我强烈不想在转换后的代码中使用visualbasic dll,并且到目前为止一直做得很好。
但是这段代码
Dim x as Double 'this was error saying it was integer
x = Val("1 23 45 x 6") ''#x is 12345
x = Val("1..23") ''#x is 1.23
x = Val("1 1,,,,,2,2..3") ''#x is 1122.3
即使使用 visualbasic.conversion.dll 中的“Val”也不能与 vb6 一样工作 有没有人解决了这个问题以使其工作相同?最好使用 c# 解决方案。
【问题讨论】:
-
当 x 被声明为整数时,它怎么可能是 1.23?
-
它是那些小数整数之一,这些都是现在的时尚......
-
我个人认为这个功能很疯狂。如果德国人(非程序员)输入“1,23”,他会不满意结果是 123 而不是 1.23
-
@Code - 在德语系统上,知道 . 而不是 .是小数点。
-
@Joel:根据文档,它不够聪明:“
Val函数仅将句点 (.) 识别为有效的小数分隔符。” @ 987654321@