如何将double格式化为字符串并获取字面值

时间:2012-10-01 21:48:22

标签: c# excel

我希望sDbl的值为“-0.000023”,因为它没有任何自定义格式。

Double dbl = -0.000023;              //value stored as -0.000023  
String sDbl = ConvertToString(dbl);  //sDbl has value of "-2.3E-05"  


String ConvertToString(Object value)  
{
  if(value != null)  
    return value.ToString();    
  else  
    return String.Empty  
} 

2 个答案:

答案 0 :(得分:7)

您可以使用Double.ToString(string)选择的任何格式说明符:

string sDbl = dbl.ToString("R");

例如,上面使用了("R"standard format specifier(应该给出结果)。您还可以使用custom format strings来更好地控制输出。


编辑以回应评论:

鉴于您的评论,获取实际“输入”文本的唯一方法是将变量直接存储为字符串(而不是双精度),或者解析源代码本身(可以通过{ {3}})。用于指定数字的“格式”不是程序编译输出的一部分。

答案 1 :(得分:0)

如果要从excel单元格中获取数据作为单元格当前格式化方式的字符串表示形式,则可以使用Range对象的Text属性而不是Value2属性