zoukankan      html  css  js  c++  java
  • string.format大全

    字符串的数字格式

    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+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:

    SpecifierTypeExample Output (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 & time December 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:

    SpecifierTypeExample Example 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%

  • 相关阅读:
    Ch5 关联式容器(上)
    Ch4 序列式容器(下)
    Ch4 序列式容器(上)
    DNN模型学习笔记
    关于换博客的说明
    睡前一小时数学之导数的学习与证明
    OpenJudge 666:放苹果 // 瞎基本DP
    OpenJudge 2990:符号三角形 解析报告
    OpenJudge1700:八皇后问题 //不属于基本法的基本玩意
    BZOJ1088扫雷Mine 解析报告
  • 原文地址:https://www.cnblogs.com/itjeff/p/4118277.html
Copyright © 2011-2022 走看看