【发布时间】:2018-06-04 07:17:47
【问题描述】:
我在数据库中保存了一系列百分比值,如下所示:
Percentage
_____________
100.00000
50.00000
74.02500
当我在屏幕上显示这些值时,我想从字符串末尾修剪掉不必要的零以及小数点,这样上面的例子就变成了:
Percentage
_____________
100
50
74.025
我目前正在使用以下代码:
displayVal = rawVal.TrimEnd({"0"c, "."c})
但如果有额外的零,此代码将继续修剪小数点后。我也试过了:
displayVal = rawVal.TrimEnd(New String({"0", "."}))
这几乎可以工作。它只留下小数点。
有没有办法使用 TrimEnd() 做我想做的事,还是我需要切换到正则表达式?
【问题讨论】:
-
由于您显示货币值(可能是
decimal),以所需的方式将它们转换为字符串。不要错误地转换它们,然后尝试修复它。我们需要知道您在哪里/如何从数据库中读取值,以及您在哪里/如何在屏幕上显示它们。 -
@TimSchmelter - 我实际上解决了货币问题(我已经更新了我的问题以反映这一点),但我仍然遇到百分比问题。由于我从数据库中提取,我的代码看起来像 `reader.Item("Percent").ToString("E") 并且我收到错误消息说输入字符串的格式不正确。
-
reader.Item 返回没有带参数的 ToString 重载的对象。你必须使用 reader.GetDecimal 或 reader.GetDouble 然后使用它