• String.Format格式说明(转)



    原文:http://www.cnblogs.com/tuyile006/archive/2006/07/13/449884.html

    C#格式化数值结果表

    字符

    说明

    示例

    输出

    C货币string.Format("{0:C3}", 2)$2.000
    D十进制string.Format("{0:D3}", 2)002
    E科学计数法1.20E+0011.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.

     

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

    Numbers

    Basic number formatting specifiers:

     

    SpecifierTypeFormat

    Output 
    (Passed 
    Double 1.42)

    Output 
    (Passed 
    Int -12400)

    cCurrency{0:c}$1.42-$12,400
    dDecimal (Whole number){0:d}System.
    FormatException
    -12400
    eScientific{0:e}1.420000e+000-1.240000e+004
    fFixed point{0:f}1.42-12400.00
    gGeneral{0:g}1.42-12400
    nNumber with commas for thousands{0:n}1.42-12,400
    rRound trippable{0:r}1.42System.
    FormatException
    xHexadecimal{0:x4}System.
    FormatException
    cf90

    Custom number formatting:

     

    SpecifierTypeExampleOutput (Passed Double 1500.42)Note
    0Zero placeholder{0:00.0000}1500.4200Pads with zeroes.
    #Digit placeholder{0:(#).##}(1500).42
    .Decimal point{0:0.0}1500.4
    ,Thousand separator{0:0,0}1,500Must be between two zeroes.
    ,.Number scaling{0:0,.}2Comma adjacent to Period scales by 1000.
    %Percent{0:0%}150042%Multiplies by 100, adds % sign.
    eExponent placeholder{0:00e+0}15e+2Many exponent formats available.
    ;Group separatorsee 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.

     

    SpecifierTypeExample (Passed System.DateTime.Now)
    dShort date10/12/2002
    DLong dateDecember 10, 2002
    tShort time10:11 PM
    TLong time10:11:29 PM
    fFull date & timeDecember 10, 2002 10:11 PM
    FFull date & time (long)December 10, 2002 10:11:29 PM
    gDefault date & time10/12/2002 10:11 PM
    GDefault date & time (long)10/12/2002 10:11:29 PM
    MMonth day patternDecember 10
    rRFC1123 date stringTue, 10 Dec 2002 22:11:29 GMT
    sSortable date string2002-12-10T22:11:29
    uUniversal sortable, local time2002-12-10 22:13:50Z
    UUniversal sortable, GMTDecember 11, 2002 3:13:50 AM
    YYear month patternDecember, 2002

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

    Custom date formatting:

     

    SpecifierTypeExampleExample Output
    ddDay{0:dd}10
    dddDay name{0:ddd}Tue
    ddddFull day name{0:dddd}Tuesday
    f, ff, ...Second fractions{0:fff}932
    gg, ...Era{0:gg}A.D.
    hh2 digit hour{0:hh}10
    HH2 digit hour, 24hr format{0:HH}22
    mmMinute 00-59{0:mm}38
    MMMonth 01-12{0:MM}12
    MMMMonth abbreviation{0:MMM}Dec
    MMMMFull month name{0:MMMM}December
    ssSeconds 00-59{0:ss}46
    ttAM or PM{0:tt}PM
    yyYear, 2 digits{0:yy}02
    yyyyYear{0:yyyy}2002
    zzTimezone offset, 2 digits{0:zz}-05
    zzzFull timezone offset{0:zzz}-05:00
    :Separator{0:hh:mm:ss}10:43:20
    /Separator{0:dd/MM/yyyy}10/12/2002

    Enumerations

     

    SpecifierType
    gDefault (Flag names if available, otherwise decimal)
    fFlags always
    dInteger always
    xEight 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%

  • 相关阅读:
    java前三章总结
    Java入门第二章
    java编程入门小结
    Java入门第二章
    java预习易错点
    计算机基础
    切换卡
    ajax
    水印4
    shuiyin3
  • 原文地址:https://www.cnblogs.com/moses/p/1735109.html
Copyright © 2020-2023  润新知