泰仔在線

          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%

          主站蜘蛛池模板: 喀什市| 兴隆县| 汾西县| 临武县| 阳山县| 秦皇岛市| 离岛区| 栾川县| 石棉县| 密山市| 凤阳县| 嘉祥县| 卢湾区| 寿阳县| 郸城县| 永平县| 祥云县| 忻城县| 湖口县| 公主岭市| 将乐县| 抚顺市| 务川| 甘谷县| 信宜市| 宁化县| 晋宁县| 临安市| 夹江县| 铁岭市| 高陵县| 栾城县| 崇阳县| 盱眙县| 永寿县| 平安县| 同德县| 玉龙| 广河县| 娄烦县| 无极县|