web-dev-qa-db-ja.com

ドットの後に小数点以下2桁のみを残す

public void LoadAveragePingTime()
{
    try
    {
        PingReply pingReply = pingClass.Send("logon.chronic-domination.com");
        double AveragePing = (pingReply.RoundtripTime / 1.75);

        label4.Text = (AveragePing.ToString() + "ms");                
    }
    catch (Exception)
    {
        label4.Text = "Server is currently offline.";
    }
}

現在、私のlabel4.Text getは次のようになっています: "187.371698712637"。

「187.37」のように表示する必要があります

DOTの後の2つの投稿のみ。誰か助けてくれますか?

56
Sergio Tapia

string.Format あなたの友達です。

String.Format("{0:0.00}", 123.4567);      // "123.46"
131
Matt Grande

カンマの後に2つの数字だけを取得したい場合は、たとえば、ラウンド関数を提供するMathクラスを使用できます。

float value = 92.197354542F;
value = (float)System.Math.Round(value,2);         // value = 92.2;

このヘルプを願っています
乾杯

53
Anas
// just two decimal places
String.Format("{0:0.00}", 123.4567);      // "123.46"
String.Format("{0:0.00}", 123.4);         // "123.40"
String.Format("{0:0.00}", 123.0);         // "123.00"

http://www.csharp-examples.net/string-format-double/

編集

「string」ではなく「String」を使用した理由はわかりませんが、残りは正しいです。

29
Steven Sudit
double amount = 31.245678;
amount = Math.Floor(amount * 100) / 100;
5
Miru

これを使用できます

"String.Format(" {0:F2} "、String Value);"

    // give you only the two digit after Dot, excat two digit.
4
Himanshu Shukla
yourValue.ToString("0.00") will work.
1
Sumit Joshi

Stringのプロパティを使用する

double value = 123.456789;
String.Format("{0:0.00}", value);

注:これは表示のみに使用できます。

System.Mathを使用

double value = 123.456789;
System.Math.Round(value, 2);
1

これを試して:

double result = Math.Round(24.576938593,2);
MessageBox.Show(result.ToString());

出力:24.57

1
user3077282

あるいは、複合演算子Fを使用して、小数点以下に表示する小数点の数を指定することもできます。

string.Format("{0:F2}", 123.456789);     //123.46
string.Format("{0:F3}", 123.456789);     //123.457
string.Format("{0:F4}", 123.456789);     //123.4568

切り上げられるので注意してください。

一般的なドキュメントを入手しました。そこには他にもたくさんのフォーマット演算子があり、チェックアウトすることができます。

ソース: https://msdn.Microsoft.com/en-us/library/dwhawy9k(v = vs.110).aspx

1
Taylor Flatt

簡単なソリューション:

double totalCost = 123.45678;
totalCost = Convert.ToDouble(String.Format("{0:0.00}", totalCost));

//output: 123.45
1
Saif

これを試して

public static string PreciseDecimalValue(double Value, int DigitsAfterDecimal)
        {
            string PreciseDecimalFormat = "{0:0.0}";

            for (int count = 2; count <= DigitsAfterDecimal; count++)
            {
                PreciseDecimalFormat = PreciseDecimalFormat.Insert(PreciseDecimalFormat.LastIndexOf('}'), "0");
            }
            return String.Format(PreciseDecimalFormat, Value);
        }
1
Tanmay Nehete

double doublVal = 123.45678;

2つの方法があります。

  1. 文字列で表示する場合:

    String.Format("{0:0.00}", doublVal );
    
  2. 再び得るために

    doublVal = Convert.ToDouble(String.Format("{0:0.00}", doublVal ));
    
0
Ali Raza

文字列補間を使用decimalVar:0.00

0
emanuel