• asp.net 字符串格式化


    DataFormatString属性:{0:Bxx} B为取值类型
    格式字符 说明 
    C  以货币格式显示数值。 
    D  以十进制格式显示数值。 
    E  以科学记数法(指数)格式显示数值。 
    F  以固定格式显示数值。 
    G  以常规格式显示数值。 
    N  以数字格式显示数值。 
    X  以十六进制格式显示数值。
    例:  
    float   money=153325.32m;  
      Label1.Text=string.Format("{0:C2}",money);  
      结果如下:¥153,325.32,
    注意   除 X 以指定的大小写形式显示十六进制字符之外,其他格式字符不区分大小写。
    格式字符后的值(常规示例中为 xx)指定显示的值的有效位数或小数位数。


    例:
    98765.4321  "{0:C}"   ¥98,765.43
    -8765.4321  "{0:C}"   (¥98,765.43)
    12345  "{0:D}" 12345
    12345  "{0:D6}" 012345
    98765.4321  "{0:E}"   9.87654321E+004
    98765.4321  "{0:E11}"   9.87654321000E+004
    98765.4321  "{0:F}"   98765.43
    98765.4321  "{0:F0}"   98765
    98765.4321  "{0:G}"   98765.4321
    987654321  "{0:G6}"   9.87654E8
    98765.4321  "{0:N}"   98,765.43
    987654321  "{0:N3}"   987,654,321.000
    98765.4321  "Total:{0:C}" ¥98,765.43


    字符格式:
    {0:c}货币格式
    日期:
    {0:d}2004-11-1
    {0:D}2004年11月1日

    格式说明符 名称 说明 
    d 短日期模式
    D 长日期模式 
    t 短时间模式 
    T 长时间模式 
    f 完整日期/时间模式(短时间) 显示长日期和短时间模式的组合,由空格分隔。 
    F 完整日期/时间模式(长时间)
    g 常规日期/时间模式(短时间) 显示短日期和短时间模式的组合,由空格分隔。 
    G 常规日期/时间模式(长时间) 显示短日期和长时间模式的组合,由空格分隔。 
    M 或 m 月日模式 
    R 或 r RFC1123 模式 
    s 可排序的日期/时间模式;
    u 通用的可排序日期/时间模式 
    U 通用的可排序日期/时间模式
    Y 或 y 年月模式
    任何其他单个字符 未知说明符 
    '///////////////////////////////////////////
    自定义日期格式
    格式说明符 说明 
    d 显示月份的当前日期,以 1 到 31 之间的一个数字表示,包括 1 和 31。如果日期只有一位数字 (1-9),则它显示为一位数字。 
    请注意,如果“d”格式说明符单独使用,没有其他自定义格式字符串,则它被解释为标准短日期模式格式说明符。如果“d”格式说明符与其他自定义格式说明符或者“%”字符一起传递,则它被解释为自定义格式说明符。
     
    dd 显示月份的当前日期,以 1 到 31 之间的一个数字表示,包括 1 和 31。如果日期只有一位数字 (1-9),则将其格式化为带有前导 0 (01-09)。 
    ddd  显示指定的 DateTime 的日期部分缩写名称。如果未提供特定的有效格式提供程序(实现具有预期属性的 IFormatProvider 的非空对象),则使用 DateTimeFormat 的 AbbreviatedDayNames 属性及其与当前所使用线程关联的当前区域性。否则,使用来自指定格式提供程序的 AbbreviatedDayNames 属性。 
    dddd(外加任意数量的附加“d”字符) 显示指定的  DateTime 的日期全名。如果未提供特定的有效格式提供程序(一个非空对象,可实现具有预期属性的 IFormatProvider),则使用  DateTimeFormat 的 DayNames 属性及其与当前所使用线程关联的当前区域性。否则,使用来自指定格式提供程序的  DayNames 属性。 
    f 显示以一位数字表示的秒。 
    请注意,如果“f”格式说明符单独使用,没有其他自定义格式字符串,则它被解释为完整的(长日期 + 短时间)格式说明符。如果“f”格式说明符与其他自定义格式说明符或“%”字符一起传递,则它被解释为自定义格式说明符。
     
    ff 显示以二位数字表示的秒。 
    fff 显示以三位数字表示的秒。 
    ffff 显示以四位数字表示的秒。 
    fffff 显示以五位数字表示的秒。 
    ffffff 显示以六位数字表示的秒。 
    fffffff 显示以七位数字表示的秒。 
    g  或 gg(外加任意数量的附加“g”字符) 显示指定的 DateTime 的年代部分(例如 A.D.)。如果未提供特定的有效格式提供程序(一个非空对象,可实现具有预期属性的 IFormatProvider),则年代由与 DateTimeFormat 关联的日历及其与当前线程关联的当前区域性确定。 
    请注意,如果“g”格式说明符单独使用,没有其他自定义格式字符串,则它被解释为标准常规格式说明符。如果“g”格式说明符与其他自定义格式说明符或“%”字符一起传递,则它被解释为自定义格式说明符。
     
    h  以 1 到 12 范围中的一个数字显示指定的 DateTime 的小时数,该小时数表示自午夜(显示为 12)或中午(也显示为 12)后经过的整小时数。如果单独使用这种格式,则无法区别某一小时是中午以前还是中午以后的时间。如果该小时是单个数字 (1-9),则它显示为单个数字。显示小时时不发生任何舍入。例如,DateTime 为 5:43 时返回 5。 
    hh, hh(外加任意数量的附加“h”字符) 以 1 到 12 范围中的一个数字显示指定的 DateTime 的小时数,该小时数表示自午夜(显示为 12)或中午(也显示为 12)后经过的整小时数。如果单独使用这种格式,则无法区别某一小时是中午以前还是中午以后的时间。如果该小时是单个数字 (1-9),则将其格式化为前面带有 0 (01-09)。 
    H 以 0 到 23 范围中的一个数字显示指定的 DateTime 的小时数,该小时数表示自午夜(显示为 0)后经过的整小时数。如果该小时是单个数字 (0-9),则它显示为单个数字。 
    HH, HH(外加任意数量的附加“H”字符) 以 0 到 23 范围中的一个数字显示指定的 DateTime 的小时数,该小时数表示自午夜(显示为 0)后经过的整小时数。如果该小时是单个数字 (0-9),则将其格式化为前面带有 0 (01-09)。 
    m 以 0 到 59 范围中的一个数字显示指定的 DateTime 的分钟数,该分钟数表示自上一小时后经过的整分钟数。如果分钟是一位数字 (0-9),则它显示为一位数字。 
    请注意,如果“m”格式说明符单独使用,没有其他自定义格式字符串,则它被解释为标准的月日模式格式说明符。如果“m”格式说明符与其他自定义格式说明符或“%”字符一起传递,则它被解释为自定义格式说明符。
     
    mm, mm(外加任意数量的附加“m”字符) 以 0 到 59 范围中的一个数字显示指定的 DateTime 的分钟数,该分钟数表示自上一小时后经过的整分钟数。如果分钟是一位数字 (0-9),则将其格式化为带有前导 0 (01-09)。 
    M 显示月份,以 1 到 12 之间(包括 1 和 12)的一个数字表示。如果月份是一位数字 (1-9),则它显示为一位数字。 
    请注意,如果“M”格式说明符单独使用,没有其他自定义格式字符串,则它被解释为标准的月天模式格式说明符。如果“M”格式说明符与其他自定义格式说明符或“%”字符一起传递,则它被解释为自定义格式说明符。
     
    MM 显示月份,以 1 到 12 之间(包括 1 和 12)的一个数字表示。如果月份是一位数字 (1-9),则将其格式化为带有前导 0 (01-09)。 
    MMM  显示指定的 DateTime 的月部分缩写名称。如果未提供特定的有效格式提供程序(一个非空对象,可实现具有预期属性的  IFormatProvider),则使用 DateTimeFormat 的 AbbreviatedMonthNames 属性及其与当前线程关联的当前区域性。否则,使用来自指定格式提供程序的 AbbreviatedMonthNames 属性。 
    MMMM 显示指定的  DateTime 的月的全名。如果未提供特定的有效格式提供程序(一个非空对象,可实现具有预期属性的 IFormatProvider),则使用  DateTimeFormat 的 MonthNames 属性及其与当前线程关联的当前区域性。否则,使用来自指定格式提供程序的  MonthNames 属性。 
    s 以 0 到 59 范围中的一个数字显示指定的 DateTime 的秒数,该秒数表示自上一分钟后经过的整秒数。如果秒是一位数字 (0-9),则它仅显示为一位数字。 
    请注意,如果“s”格式说明符单独使用,没有其他自定义格式字符串,则它被解释为标准的可排序日期/时间模式格式说明符。如果“s”格式说明符与其他自定义格式说明符或“%”字符一起传递,则它被解释为自定义格式说明符。
     
    ss, ss(外加任意数量的附加“s”字符) 以 0 到 59 范围中的一个数字显示指定的 DateTime 的秒数,该秒数表示自上一分钟后经过的整秒数。如果秒是一位数字 (0-9),则将其格式化为带有前导 0 (01-09)。 
    t  显示指定的 DateTime 的 A.M./P.M. 指示项的第一个字符。如果未提供特定的有效格式提供程序(一个非空对象,可实现具有预期属性的  IFormatProvider),则使用 DateTimeFormat 的 AMDesignator(或 PMDesignator)属性及其与当前线程关联的当前区域性。否则,使用来自指定 IFormatProvider 的 AMDesignator(或 PMDesignator)属性。如果对于指定的 DateTime 所经过的总整小时数小于 12,则使用 AMDesignator。否则,使用 PMDesignator。 
    请注意,如果“t”格式说明符单独使用,没有其他自定义格式字符串,则它被解释为标准的长时间模式格式说明符。如果“t”格式说明符与其他自定义格式说明符或“%”字符一起传递,则它被解释为自定义格式说明符。
     
    tt,  tt(外加任意数量的附加“t”字符) 显示指定的 DateTime 的 A.M./P.M. 指示项。如果未提供特定的有效格式提供程序(一个非空对象,可实现具有预期属性的 IFormatProvider),则使用 DateTimeFormat 的 AMDesignator(或  PMDesignator)属性及其与当前线程关联的当前区域性。否则,使用来自指定 IFormatProvider 的 AMDesignator (或 PMDesignator)属性。如果对于指定的 DateTime 所经过的总整小时数小于 12,则使用 AMDesignator。否则,使用 PMDesignator。 
    y 最多用两位数字显示指定的 DateTime 的年份。忽略年的前两位数字。如果年份是一位数字 (1-9),则它显示为一位数字。 
    请注意,如果“y”格式说明符单独使用,没有其他自定义格式字符串,则它被解释为标准短日期模式格式说明符。如果“y”格式说明符与其他自定义格式说明符或“%”字符一起传递,则它被解释为自定义格式说明符。
     
    yy 最多用两位数字显示指定的 DateTime 的年份。忽略年的前两位数字。如果年份是一位数字 (1-9),则将其格式化为带有前导 0 (01-09)。 
    yyyy 显示指定的 DateTime 的年份部分(包括纪元)。如果年份长度小于四位,则按需要在前面追加零以使显示的年份长度达到四位。 
    z  仅以整小时数为单位显示系统当前时区的时区偏移量。偏移量总显示为带有前导符号(零显示为“+0”),指示早于格林威治时间 (+) 或迟于格林威治时间  (-) 的小时数。值的范围是 -12 到 +13。如果偏移量为一位数 (0-9),则将其显示为带合适前导符号的一位数。时区设置以 +X 或 - X 的形式指定,其中 X 是相对于 GMT 的小时偏差。显示的偏差受夏时制的影响。 
    zz 仅以整小时数为单位显示系统当前时区的时区偏移量。偏移量总显示为带有前导或尾随符号(零显示为“+00”),指示早于格林威治时间 (+) 或迟于格林威治时间 (-) 的小时数。值范围为 - 12 到 +13。如果偏移量为一位数 (0-9),则将其格式化为前面带有 0 (01-09) 并带有适当的前导符号。时区设置以 +X 或 -X  的形式指定,其中 X 是相对于 GMT 的小时偏差。显示的偏差受夏时制的影响。 
    zzz, zzz(外加任意数量的附加“z”字符) 以小时和分钟为单位显示系统当前时区的时区偏移量。偏移量总是显示为带有前导或尾随符号(零显示为“+00:00”),指示早于格林威治时间 (+) 或迟于格林威治时间 (-) 的小时数。值范围为 -12:00 到 +13:00。如果偏移量为一位数 (0-9),则将其格式化为前面带有前导 0  (01-09) 并带有适当的前导符号。时区设置以 +X 或 -X 的形式指定,其中 X 是相对于 GMT 的小时偏差。显示的偏差受夏时制的影响。  
    : 时间分隔符。 
    / 日期分隔符。 
    " 带引号的字符串。显示转义符 (/) 之后两个引号之间的任何字符串的文本值。  
    ' 带引号的字符串。显示两个“'”字符之间的任何字符串的文本值。 
    %c 其中 c 既是标准格式说明符又是自定义格式说明符,显示与格式说明符关联的自定义格式模式。 
    请注意,如果格式说明符作为单个字符来单独使用,它将被解释成标准格式说明符。只有包含两个或更多字符的格式说明符被解释为自定义格式说明符。说明符可以被同时定义为标准和自定义格式说明符,要显示此种说明符的自定义格式,请在说明符之前加“%”符号。
     
    \c 其中 c 是任意字符,转义符将下一个字符显示为文本。在此上下文中,转义符不能用于创建转义序列(如“\n”表示换行)。 
    任何其他字符 其他字符作为文本直接写入输出字符串。 

    '///////////////////////////////////////////
    枚举格式字符串
    可以使用 ToString 方法创建新的字符串对象,以表示 Enum 的数字、十六进制或字符串值。此方法采用某个枚举格式化字符串指定希望返回的值。

    下表列出了枚举格式化字符串及其返回的值。这些格式说明符不区分大小写。

    格式字符串 结果 
    G 或 g 如有可能,将枚举项显示为字符串值,否则显示当前实例的整数值。如果枚举定义中设置了 Flags 属性,则串联每个有效项的字符串值并将各值用逗号分开。如果未设置 Flags 属性,则将无效值显示为数字项。 
    F 或 f 如有可能,将枚举项显示为字符串值。如果值可以完全显示为枚举项的总和(即使未提供 Flags 属性),则串联每个有效项的字符串值并将各值用逗号分开。如果值不能完全由枚举项确定,则将值格式化为整数值。 
    D 或 d 以尽可能短的表示形式将枚举项显示为整数值。 
    X 或 x 将枚举项显示为十六进制值。按需要将值表示为带有前导零,以确保值的长度最少有八位。
  • 相关阅读:
    固定textview大小,根据文字多少调整字体自适应textview大小
    这可能是最全的禁用win10自动更新了
    Android Studio 3.0正式版填坑之路
    android studio 3.0之后版本自定义文件名生成apk文件
    Android Studio从2.3升级到3.1注意事项
    Android studio2.3.3升级3.1.2坑
    iterm2 快捷键大全
    php实现的短网址算法分享
    mysql远程连接命令
    Mac下安装与配置Go语言开发环境
  • 原文地址:https://www.cnblogs.com/future/p/1333133.html
Copyright © 2020-2023  润新知