将int转换为double时,如何显示小数点和后面的两个位置?

B. *_*non 2 c# math .net-1.1 compact-framework windows-ce

给定值123,1234和12345,我需要将它们分别转换为1.23,12.34和123.45

这段代码,当我输入123,然后是1234,然后12345进入textbox2:

int originalVal = Convert.ToInt16(textBox2.Text);
double doubled = Convert.ToDouble(originalVal/100);
Run Code Online (Sandbox Code Playgroud)

...给我1,12和123而不是预期的1.23,12.34和123.45.

我需要做些什么才能获得理想的结果?请注意,这是使用VS2003和.NET 1.1的Windows CE/Compact Framework项目.

Gre*_*ill 11

你正在做的整数除法,因为无论originalVal100自身的整数.尝试:

originalVal/100.0
Run Code Online (Sandbox Code Playgroud)

使用100.0使编译器为浮点除法生成代码.或者,这会产生同样的效果:

Convert.ToDouble(originalVal)/100
Run Code Online (Sandbox Code Playgroud)

在进行除法之前originalVal整数转换为double 的位置.