5

ふと気になったものばかり。ヨーロッパでは、コンマは主に小数 (20,001 など) に使用されますが、ヨーロッパ以外ではポイント (20.001 など) が主に使用されます。c# はこれをどのように処理しますか? ヨーロッパとヨーロッパ以外の人々が使用するアプリケーションの場合、プログラミング時に上記のことを心配する必要がありますか?

これについてはただ興味があります。

4

5 に答える 5

13

プログラミング言語に関する限り、小数点区切り記号は常に.であり、関数の引数を区切るために使用される句読点は常に,です。プログラマーの話し言葉に基づいてそれを変更すると、混乱しすぎます。

ユーザー インターフェイスの場合、選択した小数点区切り記号と千単位区切り記号を使用する浮動小数点数表現を生成できる書式設定関数がCultureInfoクラスに含まれています。(または、数値の数字をトリプレットとは異なる方法でグループ化するカルチャの場合、書式設定関数はそれも処理できます。)

于 2012-01-16T19:18:43.987 に答える
7

CultureInfo はその状況を処理します。

これを見てください

// format float to string
float num = 1.5f;
string str = num.ToString(CultureInfo.InvariantCulture.NumberFormat);        // "1.5"
string str = num.ToString(CultureInfo.GetCultureInfo("de-DE").NumberFormat); // "1,5"
于 2012-01-16T19:19:05.453 に答える
3

はい、c# (そして実際には .NET フレームワーク全体) には、この目的のためにカルチャの概念があります。

http://msdn.microsoft.com/en-us/library/bz9tc508.aspx

http://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo(v=VS.100).aspx

于 2012-01-16T19:19:05.640 に答える
0

これを処理するには、 CultureInfo クラスを使用する必要があります。正しいフォーマッタで読み書きするだけです。

于 2012-01-16T19:19:59.460 に答える
0

それはあなたが何をするかによって異なります... .NETは通常、マシン/ OSの現在の設定を認識しており、それらを使用しています...

これを調べて、あなたのケースに関連するものがあるかどうかを確認する必要があります...

于 2012-01-16T19:20:07.967 に答える