development

점 뒤에 소수점 두 자리 만 남겨 둡니다.

big-blog 2020. 12. 13. 10:12
반응형

점 뒤에 소수점 두 자리 만 남겨 둡니다.


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 이후 단 두 개의 게시물. 누군가 나를 도울 수 있습니까?


string.Format 당신의 친구입니다.

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

쉼표 뒤에 두 개의 숫자 만 사용하려면 다음과 같이 round 함수를 제공하는 Math 클래스를 사용할 수 있습니다.

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

이 도움이
건배 희망


// 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/

편집하다

왜 그들이 "문자열"대신 "문자열"을 사용했는지 모르겠지만 나머지는 정확합니다.


double amount = 31.245678;
amount = Math.Floor(amount * 100) / 100;

이것을 사용할 수 있습니다

"String.Format ("{0 : F2} ", 문자열 값);"

    // give you only the two digit after Dot, excat two digit.

또는 복합 연산자 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


이 시도

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);
        }

속성 사용 String

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

참고 : 이것은 표시에만 사용할 수 있습니다.

사용 System.Math

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

이 시도:

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

출력 : 24.57


간단한 솔루션 :

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

//output: 123.45

yourValue.ToString("0.00") will work.

문자열 보간 사용 decimalVar:0.00


double doublVal = 123.45678;

두 가지 방법이 있습니다.

  1. 문자열로 표시 :

    String.Format("{0:0.00}", doublVal );
    
  2. 다시 더블을 얻기 위해

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

참고 URL : https://stackoverflow.com/questions/1291483/leave-only-two-decimal-places-after-the-dot

반응형