zoukankan      html  css  js  c++  java
  • C#中的字符串格式String.Format

    C#中的字符串格式String.Format

    String.Format()和ToString()是一回事。就是给个参数,再给个字符串格式,然后按照给定的格式输出参数。详细信息可以在这个链接看到,

    http://msdn.microsoft.com/zh-cn/library/fbxft59x.aspx Topic: Formatting Types

    1. 标准数字格式

    ----- C 或者c , 货币。默认是小数点后两位,有时候后面跟个数字,比如C3,就是小数点后三位的意思。不同的文化设置,前面的货币符号是不同的。

    double money = 123.456;

    money.ToString("C", CultureInfo.CreateSpecificCulture("en-US" ))); //输出是$123.45

    money.ToString("C3", CultureInfo.CreateSpecificCulture("en-US" ))); //输出是$123.456
    ---- D 或者 d Decimal,就是10进制整数。后面可以跟数字,表示整个的位数,不足的位数用左侧的零补齐。

    int value = 12345;

    value.ToString(" D" ); //输出是12345

    value.ToString(" D7" );//输出是0012345

    ---- E 或者 e 科学计数法,就是前面是一个1-10的小数,后面跟着10的多少次方的表达形式。后面跟着个数,表示小数点后有几位的意思,不足的位数用零补齐。

    double data = 12345.678;

    data.ToString ( " e " ); //输出是1.2345678E+004

    data.ToString( “ e4" );//输出是1.2345E+004

    ---- F 或者 f 就是小数点后固定几位。写个数,就表示位数。只写f,表示默认两位。

    double data = 12345.678;
    data.ToString( " f " ); //输出是12345.67;
    data.ToString( “ f4" );//输出是12345.6780;

    ---- G 或者 g 表示General
    即复杂,又不太常用,就不详述了

    ---- N 或者 n 就是按照千位,三个三个分组那种。后面接的数字表示小数点后的位数

    doule data = 123456789.1234;
    data .ToString( " N", CultureInfo.InvariantCulture));//输出是123,456,789.1234;
    data .ToString( "N1", CultureInfo.InvariantCulture));//输出是123,456,789.1;

    ---- P 或者 p,百分比形式输出
    doule data = 0.12345;
    data .ToString("P", CultureInfo.InvariantCulture));//输出是12.34%
    data .ToString("P1", CultureInfo.InvariantCulture));//输出是12.3%

    ---- R 或者 r Round UP

    --- X 或者 x 十六进制
    2. 用户自定义数字格式

    基本思想就是用占位符写个字符串格式,然后照着填写就是了。

    0 代表 0-9,就是不足位数,用零补齐的意思,也包括在左侧的零。

    # 代表空格,0-9,包括前后的零自动抹去。

    ,是千位分隔符

    % 百分号

    ; 区间分割符。在这个之前的,是正数的表达格式,后面是负数的表达格式。

    说明白了,下面就举例子

    格式

    0.00 数值是1.1 输出是 1.10

    00.00 数值是1.1 输出是 01.10

    #.## 数值是1.1 输出是1.1

    (###)###-#### 数值是1234567890 输出是(123)456-7890

    [##-##-##] 数值是123456 输出是[12-34-56]

    #0.###% 数值是 .086 输出是8.6%

    #,# 数值是12345678 输出是12,345,678

    ##;(##) 数值是23 输出是 23

    ##;(##) 数值是-23 输出是 (23)

    3. Datetime的常用格式

    用法大致如下,

    DateTime curDate;

    curDate.ToString(" D" ); 输出时间格式 2008年5月3日
    curDate.ToString(" d" ); 输出时间格式 2008-5-3
    curDate.ToString("F" ); 输出时间格式 2008年5月3日 3:14:52
    curDate.ToString("f" ); 输出时间格式 2008年5月3日 3:14
    curDate.ToString("G" ); 输出时间格式 2008-5-3 3:14:52
    curDate.ToString("g" ); 输出时间格式 2008-5-3 3:14
    curDate.ToString("M" ); 输出时间格式 5月3日
    curDate.ToString("m" ); 输出时间格式 5月3日
    curDate.ToString("O" ); 输出时间格式 2008-05-03T03:14:52.8125000-05:00
    curDate.ToString("o" ); 输出时间格式 2008-05-03T03:14:52.8125000-05:00
    curDate.ToString("R" ); 输出时间格式 Sat, 03 May 2008 03:14:52 GMT
    curDate.ToString("r" ); 输出时间格式 Sat, 03 May 2008 03:14:52 GMT
    curDate.ToString("s" ); 输出时间格式 2008-05-03T03:14:52
    curDate.ToString("T" ); 输出时间格式 3:14:52
    curDate.ToString("t" ); 输出时间格式 3:14
    curDate.ToString("U" ); 输出时间格式 2008年5月3日 8:14:52
    curDate.ToString("u" ); 输出时间格式 2008-05-03 03:14:52Z
    curDate.ToString("Y" ); 输出时间格式 2008年5月
    curDate.ToString("y" ); 输出时间格式 2008年5月

    4. DateTime 自定义格式

    就是用一些参数组合起来的意思。相关参数如下

    d 就是日期。 如1,2,20等。

    dd就是二位数日期,如01, 02, 22等

    ddd 就是三位字母的星期。如: Mon,Tue等

    dddd就是星期的全名,如Monday, Sunday 等。

    f 就是秒的小数部分。 如 SS.f,就是几秒几的意思。

    ff就是秒的两位小数部分。fff, fffff,以及FF,FFF意思都差不多,就是几位小数的意思。

    g就是在时间后面的额外部分,如B.C, A.D等等

    h,0-12的小时。hh,两位表述的小时。

    H,0-23的小时。HH,两位表述的小时。

    K,表示当前的时区号。

    m,mm,表示不限位和两位表示的分钟。

    M,MMM,MMMM表示月份。分别如: 1, Jan, January

    s, ss 表示不限位和两位的秒。如1, 01等

    t, tt,表示上午下午, AM, 或者PM

    y, yy, yyyy,yyyyy不同位数的年份

    z,zz,zzzz不同位数的时区

  • 相关阅读:
    32位和64位的区别
    Git--版本管理的使用及理解
    Maven使用详解
    记录centos7下tomcat部署war包过程
    SSM三大框架整合教程
    Mybatis 框架搭建实例
    Eclipse 出现select type (? = any character,*= any String,Tz=TimeZone)
    JDBC 操作数据库实例
    mysql 常用命令语法
    MySQL下载安装详情教程(Windows)
  • 原文地址:https://www.cnblogs.com/La5DotNet/p/2548348.html
Copyright © 2011-2022 走看看