2011-12-14 50 views
0

我有一個方法,需要2個數字。第一個數字是我想要設置的值(或格式),第二個數字是要使用的精度。格式變量時如何格式化Double?

public double ReduceNumber(double Test, int Precision) 
{ 
} 

比方說,我在傳遞的參數125.60238674。我希望返回值爲125.6023。我知道如何在VB中使用FormatNumber()函數,但現在我試圖轉換爲C#我畫了一個空白。所有我可以在網上找到的是String.Format()這有助於我的工作,但我不知道如何編寫一個可以定期更改的格式。

+1

您是否需要一個`字符串`或'雙`返回? – Oded 2011-12-14 21:08:35

回答

4

甲格式的字符串:

public string ReduceNumber(double Test, int Precision) 
{ 
    return Test.ToString(string.Format("F{0}", Precision)); 
} 

這是通過使用standard numeric format string 「F」 與精度說明。

一個舍入的雙:

public double ReduceNumber(double Test, int Precision) 
{ 
    return Math.Round(Test, Percision); 
} 

一個點大約風格 - 參數名稱通常pascalCase在C#。

0

這裏的東西,你可以嘗試這是一個簡單的方法,我寫的,增加了「」到號碼,如10000這將返回10,000 也仰望使用的String.format {‘0:d’}例如 這是隻是一個想法,我也知道我沒有添加精確性,但可以通過該方法以及...

public static string FormatNumberWithCommas(string inputString) 
    { 
     string tempString; 
     tempString = string.Format("{0:###.####}", Convert.ToInt32(inputString)); 
     return tempString; 
    }