-3

文字列の数値をフォーマットしたい。例えば:

double number="118176";

1181.71 または 1181,71 のようになります。フォーマットの種類が見つかりませんでした。いくつかのフォーマットタイプを試しましToString("#,0")たが、うまくいきませんでした。

アドバイスをありがとう。

4

4 に答える 4

0

このページの固定小数点を参照してください (.net を想定): http://msdn.microsoft.com/en-us/library/dwhawy9k.aspx

ただし、最初に 100 で割る必要があります。

于 2012-09-21T09:44:05.633 に答える
0

まず第一に、double変数は文字列を取ることができません。しかし、それはさておき、次のようなものが役立つはずです:

double number = 1181.76;
string output = String.Format("{0:d2}", number);

これは数値を取得し、小数点以下 2 桁の 10 進数形式を使用して文字列を作成します。

あなたが言わなかったのは、整数118176が魔法のように小数点以下 2 桁の double に変わると期待する理由です。唯一の方法は

double number = 118176;
string output = String.Format("{0:d2}", number / 100.0);

編集
コメントで説明することは、もう少し複雑です。

string priceString = nodeFareList.SelectSingleNode("GenQuoteDetails/TotAmt").InnerText; 
double priceDouble = Convert.ToDouble(priceString) / 100.0;
price.InnerHtml += String.Format("{0:c}", priceDouble);

priceDoubleこれにより、数値が通貨のようにフォーマットされた値を持つ文字列に変換されます。通貨記号が必要ない場合は、次を使用します。

price.InnerHtml += String.Format("{0:d2}", priceDouble);
于 2012-09-21T09:44:56.223 に答える
0

Java の場合は、以下のコードを参照してください。

1) 最初に Decimal Format インスタンスを定義します。

DecimalFormat decimalFormat = new DecimalFormat("####.##");

2) 次に、10 進数値を「format」メソッドに渡します

文字列のダミー文字列 = decimalFormat.format(pressureValue).toString()

どこで pressureValue - 10 進数

これが役立つことを願っています。

于 2012-09-21T09:46:05.517 に答える
0

あなたが探しているのはこれだと思います:

String.Format("{0:0,0.0}", 12345.67);     
String.Format("{0:0,0}", 12345.67);

詳しくはこちらをご覧ください。

于 2012-09-21T09:46:48.893 に答える