我有以下代码,我认为应该格式化字符串有四个小数位。 (意图是值为3.59,添加尾随零,因此字符串值变为3.5900)
string PreFC = string.Format(dr.Cells["Price"].Value.ToString(),"{0:n4}");
// PreFC = (dr.Cells["Price"].Value.ToString());
StringBuilder FC = new StringBuilder(PreFC);
MessageBox.Show(PreFC);
这不起作用。它给我的价值是3.59而不是3.5900。我做错了什么?
答案 0 :(得分:2)
请参阅Standard Numeric Format Strings
对于"精确说明符"使用" f"
string PreFC = ((double)dr.Cells["Price"].Value).ToString("f");
答案 1 :(得分:2)
格式错误,值应为:
string PreFC = string.Format("{0:n4}", dr.Cells["Price"].Value);
//Format should be first
不要在值上调用ToString
,您将无法使用数字格式处理字符串值。相反,只需传递dr.Cells["Price"].Value
,因为string.Format
接受object
类型参数