[英]Rounding to 2 decimal places but keeping 4 decimal places in C#
我想將數字四舍五入到小數點后兩位,但還要保留尾隨的2個零,因此例如425.1382至425.1400我已經嘗試了以下示例,但它似乎不起作用
var amount = Math.Round((value * rate), 4);
profit = Decimal.Parse(amount.ToString("0.####"));
要么
var amount = Math.Round((value * rate), 4);
profit = Decimal.Parse(amount.ToString("0.##00"));
轉換為數字類型時,您將放棄所有不必要的數字。 在顯示之前,需要將小數轉換為字符串。
_invoicingCurrencyProfitAmount = Decimal.Parse(profitAmount.ToString("0.####"))
行返回一個十進制。 十進制確實保留所有零,問題是在哪里打印值的100%。 如果您嘗試在Console
編寫此內容
Console.Writeline("{0:F4}", _invoicingCurrencyProfitAmount);
其中{0:F4}
表示“格式為定點格式”,點后有四個數字。 當然,您可以通過使用string.Format
在任何地方使用它。
var _profitAmount = Math.Round((saleMarginValue * exchangeRate),4); _invoicingCurrencyProfitAmount = Decimal.Parse(profitAmount.ToString()。PadRight(2,'0'));
var d = 425.1382.ToString("0.##") + "00"; // "425.1400"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.