2011-07-04 8 views
0

英語以外の形式の多数の数値を含む長いXml出力ファイルを生成するアプリケーションがあります。小数点区切り記号は '、'です。しかし、このXmlファイルをさらに処理するには、すべての数値値を英語形式(基本的に2つの区切り文字を入れ替える)にする必要があります。 C#でこれを達成する最も簡単な方法は何ですか?Xmlファイルのローカライズされた形式の数字を英語の形式に変更する最も簡単な方法

+0

申し訳ありませんが、私はC#のことを意味することを忘れてしまいました。明確にするために質問を編集しました。 – Hatch

答えて

1

最も簡単な解決策は、数字を文字列として取り、英語以外のロケールを使用して数値を2重に解析することです。これは、(例えば)値を変換する必要があります

style = NumberStyles.Number | NumberStyles.AllowCurrencySymbol; 
culture = CultureInfo.CreateSpecificCulture("fr-FR"); 
if (Double.TryParse(value, style, culture, out number)) 
    Console.WriteLine("Converted '{0}' to {1}.", value, number); 
else 
    Console.WriteLine("Unable to convert '{0}'.", value); 

Source

+0

これはうまくいった!ただし、CurrentCultureに応じて、新しい値を割り当てるときには、たとえば、次のような目的のNumberFormatを指定する必要があります: 'valueAttribute.Value = localizedNumber.ToString(CultureInfo.GetCultureInfo(" en-US ")。NumberFormat); '。 – Hatch

関連する問題