C#----格式化字符串的操作

    class Program
    {
        static void Main(string[] args)
        {
            //DateTime dt = DateTime.Now;
            //Console.WriteLine("{0}", dt);//2014-3-27 10:19:24  原来形式
            //Console.WriteLine("{0:d}", dt);//2014-3-27                              "d":约束的结果,以短时间输出
            //Console.WriteLine("{0:D}", dt);//2014年3月27日星期四                    "D":长日期格式
            //Console.WriteLine("{0:f}", dt);//2014年3月27日星期四 10:24              "f":完整日期/时间模式(短时间)
            //Console.WriteLine("{0:F}", dt);//2014年3月27日星期四 10:25:13           "F":完整日期/时间模式(长时间)
            //Console.WriteLine("{0:g}", dt);//2014-3-27 10:26                        "g":常规日期/时间模式(短时间)。
            //Console.WriteLine("{0:G}", dt);//2014-3-27 10:26:41                     "G":常规日期/时间模式(长时间)
            //Console.WriteLine("{0:m}", dt);//3月27日                                "m":月/日模式。
            //Console.WriteLine("{0:M}", dt);//3月27日                                "M":月/日模式。
            //Console.WriteLine("{0:o}", dt);//2014-03-27T10:29:17.4531250+08:00      "o": 往返日期/时间模式。
            //Console.WriteLine("{0:O}", dt);//2014-03-27T10:29:17.4531250+08:00      "O": 往返日期/时间模式。
            //Console.WriteLine("{0:r}", dt);//Thu, 27 Mar 2014 10:30:27 GMT          "r":RFC1123 模式。
            //Console.WriteLine("{0:R}", dt);//Thu, 27 Mar 2014 10:30:27 GMT          "R":RFC1123 模式。
            //Console.WriteLine("{0:s}", dt);//2014-03-27T10:31:46                    "s";可排序日期/时间模式。
            //Console.WriteLine("{0:t}", dt);//10:36                                  "t":短时间模式
            //Console.WriteLine("{0:T}", dt);//10:37:40                               "T":短时间模式
            //Console.WriteLine("{0:u}", dt);//2014-03-27 10:38:53Z                   "u";通用可排序日期/时间模式。
            //Console.WriteLine("{0:U}", dt);//2014年3月27日星期四 02:39:30           "U":通用完整日期/时间模式
            //Console.WriteLine("{0:y}", dt);//2014年3月                              "y":年月模式
            //Console.WriteLine("{0:Y}", dt);//2014年3月                              "y":年月模式
            //日期和时间自定义模式
            //http://msdn.microsoft.com/zh-cn/library/8kb3ddd4%28v=vs.110%29.aspx
            
            //数值标准模式
            //http://msdn.microsoft.com/zh-cn/library/dwhawy9k%28v=vs.110%29.aspx
            //数值自定义模式
            //http://msdn.microsoft.com/zh-cn/library/0c899ak8%28v=vs.110%29.aspx

            double test = 1234.5678;
            Console.WriteLine("{0:####}", test);//1235  这是4舍5入了
            Console.WriteLine("{0:######.#####}", test);//1234.5678
            //Console.Read();
        }
    }
    /*
     * 格式化的动作用到部分方法:
     * toString()的重载;String.Format();Console.WriteLine();等。
     * 
     * 复合格式(串):
     *  我的理解是对字符串的约束和限制,它的实质也是一个字符串。和参数列表配合能很好地约束一个字符串。
     *  组成部分:固定文本和格式项。
     *  举例1:
     *      int intCc = 90;
     *      Console.WriteLine("name={0}",intCc);
     *  其中"name={0}"是一个复合格式串,"name="是固定文本,"{0}"是格式项。
     * 重点不是固定文本,而是格式项。
     * 格式项:
     *   { index[,alignment][:formatString]} ;
     *  组成:索引,对齐,格式字符串。
     *      索引:对应index,是参数列表中的第几个参数。index为0,说明对应第一个参数。是从0开始的整数。
     *      对齐:对应aliginment,是表示对齐方式的。是一个整数,可以是正的或者负的。对齐值是对目标字符串留下的长度,小于长度时取字符串的长度,大于长度时把字符串放到对齐值表示的长度中。
     *      格式字符串:对应FormatString,是一些格式说明,不同的数据类型有不同的使用语法。是格式项中的重点。实质是字符串。
     * 
     * 示例1:
     *  正常输出对应项,索引的使用。
     *      int intCc = 80;
            int intDd = 90;
            Console.WriteLine("name={0},sex={1}", intCc,intDd);//结果是name=80,sex=90
     * 示例2:
     *  索引超出范围怎么办?
     *      int intCc = 80;
            int intDd = 90;
            Console.WriteLine("name={0},sex={2}", intCc,intDd);//未处理的异常:  System.FormatException: 索引(从零开始)必须大于或等于零,且小于参
                数列表的大小。
     * 示例3:
     *  对齐的使用。
     *      string strTmp = "abcdefg";
            Console.WriteLine("{0,6}"+";",strTmp);//右对齐,对齐值6小于字符串长度7,
            Console.WriteLine("{0,8}"+";", strTmp);//右对齐,对齐值8大于字符串长度7
            Console.WriteLine("{0,-6}"+";", strTmp);//左对齐,对齐值6小于字符串长度7
            Console.WriteLine("{0,-8}"+";", strTmp);//左对齐,对齐值8大于字符串长度7
     * 
     *  结果:
     *      ;abcdefg;
            ; abcdefg;
            ;abcdefg;
            ;abcdefg ;
     * 格式字符串的使用:分类有,DateTime类型,数据类型,枚举类型,Guid类型,TimeSpan类型。
     *      DateTime类型:
     * 示例4:

posted @ 2014-04-03 11:28  deeeeeed  阅读(303)  评论(0编辑  收藏  举报

pppppppppppppp