簡體   English   中英

如何將十進制轉換為貨幣格式

[英]How to convert decimal to money format

我正在嘗試轉換一個數字,所以它看起來像金錢格式。 我需要拿258000並使其成為2,580.00或25000並使其成為250.00或360並使其成為3.60這就是我正在使用但它在所有數字的末尾添加“.00”,使得2500 2500.00但它應該是25.00 。

Value = string.Format("{0:##,###.00}", Convert.ToDecimal(Value));

在我看來,你只是錯過了這樣一個事實:你可以在解析之后將用戶的輸入除以100:

using System;

class Program
{
    static void Main(string[] args)
    {
        string input = "2500";
        decimal cents = decimal.Parse(input); // Potentially use TryParse...
        decimal dollars = cents / 100m;
        string output = dollars.ToString("0.00");
        Console.WriteLine(output); // 25.00
    }
}

請注意,關於如何顯示貨幣值存在復雜的文化規則 - 我建議使用C格式說明符,使用CultureInfo就像用戶期望的那樣,但將NumberFormatInfo.CurrencySymbol設置為空字符串。

您還應該考慮在解析用戶輸入時使用哪種文化 - 如果他們決定使用分組分隔符或小數分隔符,則會顯着影響結果。 他們會一直輸入整數嗎? 如果是這樣,也將其解析為整數。

double valueOriginal = 260;
Response.Write( (valueOriginal / 100).ToString("C"));

260 =(206/100)然后(260/100).ToString(“C”);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM