泰仔在線

          java學習,心情日記,繽紛時刻
          posts - 100, comments - 34, trackbacks - 0, articles - 0

          string.format的使用

          Posted on 2008-02-19 23:19 泰仔在線 閱讀(1485) 評論(0)  編輯  收藏 所屬分類: .NET相關

          stringstr1 =string.Format("{0:N1}",56789);               //result: 56,789.0
          stringstr2 =string.Format("{0:N2}",56789);               //result: 56,789.00
          stringstr3 =string.Format("{0:N3}",56789);               //result: 56,789.000
          stringstr8 =string.Format("{0:F1}",56789);               //result: 56789.0
          stringstr9 =string.Format("{0:F2}",56789);               //result: 56789.00
          stringstr11 =(56789 / 100.0).ToString("#.##");           //result: 567.89
          stringstr12 =(56789 / 100).ToString("#.##");             //result: 567

          C 或 c
          貨幣
          Console.Write("{0:C}", 2.5); / 2.50
          Console.Write("{0:C}", -2.5); //($2.50)

          D 或 d
          十進制數
          Console.Write("{0:D5}", 25); //00025

          E 或 e
          科學型
          Console.Write("{0:E}", 250000); //2.500000E+005

          F 或 f
          固定點
          Console.Write("{0:F2}", 25); //25.00
          Console.Write("{0:F0}", 25); //25

          G 或 g
          常規
          Console.Write("{0:G}", 2.5); //2.5

          N 或 n
          數字
          Console.Write("{0:N}", 2500000); //2,500,000.00

          X 或 x
          十六進制
          Console.Write("{0:X}", 250); //FA
          Console.Write("{0:X}", 0xffff); //FFFF

           


          C#格式化數值結果表

          字符

          說明

          示例

          輸出

          C 貨幣 string.Format("{0:C3}", 2) $2.000
          D 十進制 string.Format("{0:D3}", 2) 002
          E 科學計數法 1.20E+001 1.20E+001
          G 常規 string.Format("{0:G}", 2) 2
          N 用分號隔開的數字 string.Format("{0:N}", 250000) 250,000.00
          X 十六進制 string.Format("{0:X000}", 12) C


          string.Format("{0:000.000}", 12.2) 012.200

          Strings

          There really isn't any formatting within a strong, beyond it's alignment. Alignment works for any argument being printed in a String.Format call.

           

          Sample Generates
          String.Format("->{1,10}<-", "Hello"); -> Hello<-
          String.Format("->{1,-10}<-", "Hello"); ->Hello <-

          Numbers

          Basic number formatting specifiers:

           

          Specifier Type Format

          Output
          (Passed
          Double 1.42)

          Output
          (Passed
          Int -12400)

          c Currency {0:c} $1.42 -$12,400
          d Decimal (Whole number) {0:d} System.
          FormatException
          -12400
          e Scientific {0:e} 1.420000e+000 -1.240000e+004
          f Fixed point {0:f} 1.42 -12400.00
          g General {0:g} 1.42 -12400
          n Number with commas for thousands {0:n} 1.42 -12,400
          r Round trippable {0:r} 1.42 System.
          FormatException
          x Hexadecimal {0:x4} System.
          FormatException
          cf90

          Custom number formatting:

           

          Specifier Type Example Output (Passed Double 1500.42) Note
          0 Zero placeholder {0:00.0000} 1500.4200 Pads with zeroes.
          # Digit placeholder {0:(#).##} (1500).42
          . Decimal point {0:0.0} 1500.4
          , Thousand separator {0:0,0} 1,500 Must be between two zeroes.
          ,. Number scaling {0:0,.} 2 Comma adjacent to Period scales by 1000.
          % Percent {0:0%} 150042% Multiplies by 100, adds % sign.
          e Exponent placeholder {0:00e+0} 15e+2 Many exponent formats available.
          ; Group separator see below

          The group separator is especially useful for formatting currency values which require that negative values be enclosed in parentheses. This currency formatting example at the bottom of this document makes it obvious:

          Dates

          Note that date formatting is especially dependant on the system's regional settings; the example strings here are from my local locale.

           

          Specifier Type Example (Passed System.DateTime.Now)
          d Short date 10/12/2002
          D Long date December 10, 2002
          t Short time 10:11 PM
          T Long time 10:11:29 PM
          f Full date & time December 10, 2002 10:11 PM
          F Full date & time (long) December 10, 2002 10:11:29 PM
          g Default date & time 10/12/2002 10:11 PM
          G Default date & time (long) 10/12/2002 10:11:29 PM
          M Month day pattern December 10
          r RFC1123 date string Tue, 10 Dec 2002 22:11:29 GMT
          s Sortable date string 2002-12-10T22:11:29
          u Universal sortable, local time 2002-12-10 22:13:50Z
          U Universal sortable, GMT December 11, 2002 3:13:50 AM
          Y Year month pattern December, 2002

          The 'U' specifier seems broken; that string certainly isn't sortable.

          Custom date formatting:

           

          Specifier Type Example Example Output
          dd Day {0:dd} 10
          ddd Day name {0:ddd} Tue
          dddd Full day name {0:dddd} Tuesday
          f, ff, ... Second fractions {0:fff} 932
          gg, ... Era {0:gg} A.D.
          hh 2 digit hour {0:hh} 10
          HH 2 digit hour, 24hr format {0:HH} 22
          mm Minute 00-59 {0:mm} 38
          MM Month 01-12 {0:MM} 12
          MMM Month abbreviation {0:MMM} Dec
          MMMM Full month name {0:MMMM} December
          ss Seconds 00-59 {0:ss} 46
          tt AM or PM {0:tt} PM
          yy Year, 2 digits {0:yy} 02
          yyyy Year {0:yyyy} 2002
          zz Timezone offset, 2 digits {0:zz} -05
          zzz Full timezone offset {0:zzz} -05:00
          : Separator {0:hh:mm:ss} 10:43:20
          / Separator {0:dd/MM/yyyy} 10/12/2002

          Enumerations

           

          Specifier Type
          g Default (Flag names if available, otherwise decimal)
          f Flags always
          d Integer always
          x Eight digit hex.

          Some Useful Examples

          String.Format("{0:$#,##0.00;($#,##0.00);Zero}", value);

          This will output "$1,240.00" if passed 1243.50. It will output the same format but in parentheses if the number is negative, and will output the string "Zero" if the number is zero.

          String.Format("{0:(###) ###-####}", 18005551212);

          This will output "(800) 555-1212".

           

          變量.ToString()


          字符型轉換 轉為字符串
          12345.ToString("n"); //生成 12,345.00
          12345.ToString("C"); //生成 ¥12,345.00
          12345.ToString("e"); //生成 1.234500e+004
          12345.ToString("f4"); //生成 12345.0000
          12345.ToString("x"); //生成 3039 (16進制)
          12345.ToString("p"); //生成 1,234,500.00%

          主站蜘蛛池模板: 寿阳县| 东乡县| 江陵县| 汉源县| 邹城市| 宣城市| 鲜城| 章丘市| 盐源县| 濮阳市| 淳化县| 宝山区| 建始县| 眉山市| 连州市| 普宁市| 东乡族自治县| 洛南县| 吉木乃县| 乐亭县| 宁河县| 区。| 安化县| 龙江县| 宝鸡市| 高唐县| 灌南县| 千阳县| 天长市| 延安市| 宁津县| 朝阳区| 麻栗坡县| 黄梅县| 柞水县| 南宫市| 逊克县| 济阳县| 涪陵区| 南川市| 思南县|