XML ファイルを使用してユーザー データを保存しています。ファイルは、異なるローカリゼーションから保存およびロードできます。カルチャに応じて、倍数は "1.2345" または "1,2345" として保存できます。違いは小数点記号です。
現在、解析に次のコードを使用しています。
private double StringToDouble(string input)
{
string decimalPoint = NumberFormatInfo.CurrentInfo.NumberDecimalSeparator;
if (!input.Contains(decimalPoint))
{
input = input.Replace(".", decimalPoint);
input = input.Replace(",", decimalPoint);
}
return double.Parse(input);
}
上記のコードはうまく機能しますが、明らかに最善ではありません。より良いソリューションを提供できますか?