ドイツ語でlangauage-decimal seperatorsはあり、値分離子は ";"です。 。英語/その他の言語では、小数点の区切り文字は次のとおりです。セパレータの値は「、」です。.csvファイルを作成する - カルチャとは無関係
現在のカルチャとは別に.csvファイルを作成したいとします。私はいつも.csvファイルに "。"小数点の区切り文字を持ち、 "、"は区切り文字を持っています。
このコードは次のとおりです。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Globalization;
namespace CSV_FILE_FORMAT
{
class Program
{
static void Main(string[] args)
{
string aFileName = "result.csv";
FileStream aFileStream = new FileStream(aFileName, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None);
StreamWriter m_StreamWriter = new StreamWriter(aFileStream);
double[] values = new double[] { 10.5, 20.3, 30.2 };
for(int i = 0; i < values.Length;i++)
{
m_StreamWriter.Write(values[i].ToString(CultureInfo.InvariantCulture));
m_StreamWriter.Write(",");
}
}
}
}
OSがドイツ語の場合は、このコードの問題があります。小数点の区切り文字は "。"の代わりに "、"と表示されます。
コードが不足していることを教えてください。
_ "OSがドイツ語の場合は問題です。小数点の区切り文字は、"。 "の代わりに"、 "と表示されます。_これは、' CultureInfo.InvariantCulture'を使用して防止する必要があります。だから私はまだ見過ごされているはずです。 –
m_StreamWriter.Write(values [i] .ToString(CultureInfo。InvariantCulture));私はculture.invariantcultureを使用しています。それでも私は適切な価値を得ることができません。 – Raghav55
提供されたコードは、ドイツ語OS(Windows 7)で正常に動作します(リソースを閉じることを除いて;-))、ダブルスはポイント "。"で整形されます。コメントによって期待通りに。文化の設定が "、"に設定されていても。 –