C#數字千分位問題

一、C#中用最簡單的方法把數字(不含小數)轉換爲千分位格式:
     如1234567變成1,234,567html

     方法:測試

1234567.ToString("###,###")   或  1234567.ToString("N0")

二、C#中把數字轉換成帶兩位小數的千分位字符:code

     如1234567.891變成1,234,567.89orm

     方法:htm

String.Format("{0:N}",1234567.891);   //默認爲兩位小數,若是沒有小數位,則小數位補兩個0
或
String.Format("{0:N2}",1234567.891);

字母 含義
C或c Currency 貨幣格式
D或d Decimal 十進制格式(十進制整數,不要和.Net的Decimal數據類型混淆了)
E或e Exponent 指數格式
F或f Fixed point 固定精度格式
G或g General 經常使用格式
N或n 用逗號分割千位的數字,好比1234將會被變成1,234
P或p Percentage 百分符號格式
R或r Round-trip 圓整(只用於浮點數)保證一個數字被轉化成字符串之後能夠再被轉回成一樣的數字
X或x Hex 16進制格式blog

static void Main() 
{
int i=12345;
Console.WriteLine("{0:C}",i); //貨幣
Console.WriteLine("{0:D}",i); //十進制數
Console.WriteLine("{0:E}",i); //科學技術法
Console.WriteLine("{0:F}",i); // 浮點數表示法
Console.WriteLine("{0:G}",i); //G或g General 經常使用格式
Console.WriteLine("{0:N}",i); //N或n 用逗號分割千位的數字
}

測試:ip

第一種方法:ci

/// <summary>
/// 利用ToString轉換成指定格式
/// </summary>
/// <param name="s"></param>
/// <returns></returns>
static string Thousands(string s)
{
     double n=double.Parse(s);
     string nums = n.ToString("###,###");//或.ToString("N0")
     return nums;
}
//調用第一種方法
try
{
        Console.WriteLine("請輸入數字:");
        string s = (Console.ReadLine()).ToString();
        string th = Thousands(s);
        Console.WriteLine("數字已標記千分位:\n{0}", th);
        Console.ReadLine();
}
catch
{
       Console.WriteLine("輸入有誤,程序結束請從新輸入");
       Console.ReadLine();
}

第二種方法:字符串

/// <summary>
        /// 利用string.Format限定格式轉換
        /// </summary>
        /// <param name="s"></param>
        /// <returns></returns>
        static string Thousand(string s)
        {
            int i = int.Parse(s);
            string str=string.Format("{0:N}", i);//得出千分位結果並保留兩位小數
            int strLast=str.IndexOf(".");//找到.在字符串中的位置
            string nums=str.Substring(0,strLast);//保留.以前的字符串
            return nums;
        }
//調用第二種方法
            string nums=Thousand("12312312");
            Console.WriteLine(nums);
            Console.ReadLine();

引用:http://www.cnblogs.com/lychee/p/5189765.htmlget

相關文章
相關標籤/搜索