zoukankan      html  css  js  c++  java
  • String.Format格式说明

    以前写sql不喜欢用string.Format拼接,但是有些数据的显示用string.Format格式化还是不错的。

    下文转自 :http://www.cnblogs.com/tuyile006/archive/2006/07/13/449884.aspx  (备份用)

    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%

  • 相关阅读:
    在DevExpress程序中使用SplashScreenManager控件实现启动闪屏和等待信息窗口
    使用Setup Factory安装包制作工具制作安装包
    PostgreSQL介绍以及如何开发框架中使用PostgreSQL数据库
    在DevExpress中使用CameraControl控件进行摄像头图像采集
    读取数据库信息构建视图字段的备注信息,方便程序代码生成
    混合框架中Oracle数据库的还原处理操作
    使用图片视频展示插件blueimp Gallery改造网站的视频图片展示
    .NET缓存框架CacheManager在混合式开发框架中的应用(1)-CacheManager的介绍和使用
    在Winform界面菜单中实现动态增加【最近使用的文件】菜单项
    文字处理控件TX Text Control的使用
  • 原文地址:https://www.cnblogs.com/chenqingwei/p/1942909.html
Copyright © 2011-2022 走看看