c# - 将 int 转换为 double 时如何显示小数点及其后两位?

标签 c# math compact-framework windows-ce .net-1.1

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

这段代码,当我在 textbox2 中输入 123、1234、12345 时:

int originalVal = Convert.ToInt16(textBox2.Text);
double doubled = Convert.ToDouble(originalVal/100);

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

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

最佳答案

您正在进行整数除法,因为 originalVal100 本身都是整数。尝试:

originalVal/100.0

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

Convert.ToDouble(originalVal)/100

在进行除法之前,您要将 originalVal 整数转换为 double 。

关于c# - 将 int 转换为 double 时如何显示小数点及其后两位?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18666567/

相关文章:

c# - 在 .NET Compact 中模拟曲线图

.net - .Net CF运行线程可延长应用程序的生命周期

c# - Visual Studio - Windows 8.1 或更低版本用户的 .NET Framework 4.6.1 问题

c# - 不支持 SQL Server 表值参数列。类型是 'Object'

c# - 当变量值改变时触发事件

algorithm - 2048 中最大的瓷砖,3 组变体? [移至 SE.Math]

c# - WebApi HttpPost 无法在 Windows Azure 上运行

javascript - CSS Transform Math - 计算倾斜引起的div的高度

algorithm - 一系列文件的最短压缩时间

c# - 如何使字符串在 C# 中的所有形式中可用