我正在尝试为不同的单位制作一个转换工具,如果它们超过 1000,我想以指数形式显示数字(例如,如果 I/O 10001 然后 O/P 1.000E+04,如果 I/O 1000.1 然后 O/P 1.000E+03)。也适用于小于 1 的数字(如果 I/O 0.001 则 O/P 1.000E-03,如果 I/O 9.84203533290685E-04 则 O/P 9.842E-04。
对不起,如果问题很简单,但我是 VB .net 的新手,数学很差。
我正在尝试为不同的单位制作一个转换工具,如果它们超过 1000,我想以指数形式显示数字(例如,如果 I/O 10001 然后 O/P 1.000E+04,如果 I/O 1000.1 然后 O/P 1.000E+03)。也适用于小于 1 的数字(如果 I/O 0.001 则 O/P 1.000E-03,如果 I/O 9.84203533290685E-04 则 O/P 9.842E-04。
对不起,如果问题很简单,但我是 VB .net 的新手,数学很差。
尝试使用String.Format
:
Dim numberToDisplay As Decimal = 12345.00M
Dim formattedNumber As String = String.Format("{0:E3}", numberToDisplay)
'or:
Dim formattedNumber As String = numberToDisplay.ToString("E3")
然后你可以用它formattedNumber
来显示你喜欢的地方。
更多信息:http: //msdn.microsoft.com/en-us/library/dwhawy9k.aspx#EFormatString
您通常只使用ToString()方法并传递所需的格式字符串以产生所需的结果。
格式字符串在这里: