88 votes

Laissez seulement deux décimales après le point

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.";
    }
}

Actuellement mon label4.Text get ressemble à : "187.371698712637".

J'en ai besoin pour montrer quelque chose comme : "187.37"

Seulement deux messages après le POINT. Quelqu'un peut m'aider ?

180voto

Matt Grande Points 6230

string.Format est votre ami.

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

68voto

Anas Points 71

Si vous voulez prendre seulement deux nombres après la virgule, vous pouvez utiliser la classe de mathématiques qui vous donne la fonction ronde par exemple :

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

J'espère que cette aide vous
sourira

36voto

Steven Sudit Points 13793
// 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/

modifier

Aucune idée pourquoi ils ont utilisé "String" au lieu de "string", mais le reste est correct.

10voto

Sumit Joshi Points 597
yourValue.ToString("0.00") will work.

8voto

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

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X