0

カスタム書式設定文字列で小数を書式設定できません

0.656 => 0.67; 
23.656 => 23.67;
5105.54 => 5 105.54;
1234567,89 => 1 234 567,89

いくつかの投稿を見つけました:

c# - 文字列形式を使用して 2 桁までの小数または単純な整数を表示する

c# - Decimal をデフォルト以外の形式の文字列に変換する

しかし、それらを使用しようとすると、いくつかの問題が発生します

例: オン値

0.656 「.656」または「.66」が表示されます

23.656 => 「23.656」または「23.66」

誰かがフォーマット文字列のルールを見つけることができるリンクをお勧めしますか?

4

3 に答える 3

1

これをよく読んでください:

カスタム数値フォーマット文字列

String.Formatまたはオーバーロードを使用ToString()して、目標を達成できます。

于 2013-11-11T08:37:04.633 に答える
1

私はあなたが実際にに変換0.656したいとは思わない0.67.それは間違っている. 次のように表示する必要があることを意味していると思います0.66

使用する

YourNumber.ToString("0.##");

本当にスペースが必要な場合(これも間違っていると思います):

YourNumber.ToString("#,##0.##").Replace("."," ")
于 2013-11-11T08:35:27.373 に答える
0

数値を通貨値としてフォーマットする場合は、これを使用します

var d = 0.656;
Console.WriteLine("{0:C}", d); // prints "€ 0,66", in my case

ローカリゼーション設定で正しい通貨記号と小数点文字 (ポイントまたはコンマ) が指定されていることを確認してください。

于 2013-11-11T08:47:54.517 に答える