将双值导出为CSV

Sub*_*bru 3 c# csv double export-to-csv

我试图将double值导出到CSV文件,如下所示

double[] arr = new double[] { 0.0000074, 0.00000123, 0.0000001254 };
using (StreamWriter writer = new StreamWriter(@"D:\Test.csv"))
{
    foreach (double item in arr)
    {
        writer.WriteLine(item);
    }
};
Run Code Online (Sandbox Code Playgroud)

CSV打开时的输出是Excel/Notepad相同的,如下所示

7.40E-06
1.23E-06
1.25E-07
Run Code Online (Sandbox Code Playgroud)

期望输出与CSV文件中的输入相同.期待任何形式的意见/建议.谢谢.

Ian*_*Ian 5

您可以double string通过放置浮点格式来指定格式"F9":

double[] arr = new double[] { 0.0000074, 0.00000123, 0.0000001254 };
using (StreamWriter writer = new StreamWriter(@"D:\Test.csv"))
{
    foreach (double item in arr)
    {
        writer.WriteLine(item.ToString("F9")); //note the F9
    }
};
Run Code Online (Sandbox Code Playgroud)

9是小数点分隔符(.)后要保留的数字量.只要你想,你可以指定号码(例如F10,F11等...)