C#.net 格式化貨幣
直接顯示帶浮點數千分位的數據:
例如:12,345.00
string.Format("{0:N2}", fmoney);
注意:這里的fmoney必須是decimal型的,若fmoney傳入的是字符串,那么結果不會帶千分位
第一種:(輸入Float格式數字,將其轉換為貨幣表達方式)
/// <summary>
/// 輸入Float格式數字,將其轉換為貨幣表達方式
/// </summary>
/// <param name="ftype">貨幣表達類型:0=帶¥的貨幣表達方式;1=不帶¥的貨幣表達方式;其它=帶¥的貨幣表達方式</param>
/// <param name="fmoney">傳入的int數字</param>
/// <returns>返回轉換的貨幣表達形式</returns>
public string Rmoney(int ftype, double fmoney)
{
string _rmoney;
try
{
switch (ftype)
{
case 0:
_rmoney = string.Format("{0:C2}", fmoney);
break;
case 1:
_rmoney = string.Format("{0:N2}", fmoney);
break;
default:
_rmoney = string.Format("{0:C2}", fmoney);
break;
}
}
catch
{
_rmoney = "";
}
return _rmoney;
}
第二種:
using System;
using System.Globalization;
public class TestClass
{
public static void Main()
{
int i = 100;
// Creates a CultureInfo for English in Belize.
CultureInfo bz = new CultureInfo( "en-BZ ");
// Displays i formatted as currency for the bz.
Console.WriteLine(i.ToString( "c ", bz));
// Creates a CultureInfo for English in the U.S.
CultureInfo us = new CultureInfo( "en-US ");
// Display i formatted as currency for us.
Console.WriteLine(i.ToString( "c ", us));
// Creates a CultureInfo for Danish in Denmark.
CultureInfo dk = new CultureInfo( "da-DK ");
// Displays i formatted as currency for dk.
Console.WriteLine(i.ToString( "c ", dk));
}
}
此代碼產生下列輸出:
BZ$100.00
$100.00
kr100,00