• 【整理】C# ToString格式字符串整理(Format)(数字、日期和枚举的标准格式设置说明符)(SamWang)


      日常开发中,格式字符串的情况非常多。经常也会忘记,经常去查有些麻烦,所以今天就花点时间做个整理。

      格式字符串用的比较多的有数字、日期与枚举的格式化。

     一、数字格式字符串  

    C或c 本地货币格式
    D或d   十进制格式,把整数转换为以10为基数的书,如果给定一个精度说明符,就加上前导0
    E或e   科学计数法(指数)格式,精度说明符设置小数位数(默认为6),格式字符串的大小写(e或E)确定指数符号的大小写。
    F或f   固定点格式,精度说明符设置小数位数,可以为0
    G或g 普通格式,使用E或F格式取决于哪种格式较简单
    N或n   数字格式,用逗号表示千分符,例如32,767.44
    P或p   百分数格式
    X或x 十六进制格式,精度说明符用于加上前导0

      

      先用例子说明几种格式字符串的方法:

      

          double d = 123.456;
         Console.WriteLine("ToString:{0}", d.ToString("C"));
         Console.WriteLine("Format:{0}", string.Format("{0:C}",d));
         Console.WriteLine("Console:{0:C}", d);

       输出结果:  

      

      

      数字格式化程序例子:

         Console.WriteLine("十六进制格式符X:{0}", (145).ToString("X"));//X只支持整型
          double[] numbers = {1054.32179, -195489100.8377, 1.0437E21, 
                       -1.0573e-05};
         string[] specifiers = { "C", "E", "F", "G", "N","P", 
                       "R","#,000.000", "0.###E-000",
                       "000,000,000,000.00###" };
         foreach (double number in numbers)
         {
             Console.WriteLine("Formatting of {0}:", number);
             foreach (string specifier in specifiers)
             {
                 Console.WriteLine("   {0,5}: {1}",
                           specifier, number.ToString(specifier));
             }
             Console.WriteLine();
         }

      输出结果:

      

    MSDN:Double.ToString 方法 (String)

      二、日期格式字符串 

      

            static void DateToString()
            {
                DateTime dateValue = DateTime.Now;
                // Create an array of standard format strings.
                string[] standardFmts = {"d", "D", "f", "F", "g", "G", "m", "o", 
                                   "R", "s", "t", "T", "u", "U", "y"};
                // Output date and time using each standard format string.
                foreach (string standardFmt in standardFmts)
                    Console.WriteLine("{0}: {1}", standardFmt,
                                      dateValue.ToString(standardFmt));
                Console.WriteLine();
    
                // Create an array of some custom format strings.
                string[] customFmts = {"yyyyMMddHHmmss","h:mm:ss.ff t", "d MMM yyyy", "HH:mm:ss.f", 
                                 "dd MMM HH:mm:ss", @"\Mon\t\h\: M", "HH:mm:ss.ffffzzz" };
                // Output date and time using each custom format string.
                foreach (string customFmt in customFmts)
                    Console.WriteLine("'{0}': {1}", customFmt,
                                      dateValue.ToString(customFmt));
            }

      输出结果:

      

        MSDN:DateTime.ToString 方法 (String)  

      三、枚举格式字符串   

            enum Colors { Red, Green, Blue, Yellow = 12 };
            static void EnumToString()
            {
                Colors myColor = Colors.Yellow;
    
                Console.WriteLine("Colors.Red = {0}", Colors.Red.ToString("d"));
                Console.WriteLine("Colors.Green = {0}", Colors.Green.ToString("d"));
                Console.WriteLine("Colors.Blue = {0}", Colors.Blue.ToString("d"));
                Console.WriteLine("Colors.Yellow = {0}", Colors.Yellow.ToString("d"));
    
                Console.WriteLine("{0}myColor = Colors.Yellow{0}", Environment.NewLine);
    
                Console.WriteLine("myColor.ToString(\"g\") = {0}", myColor.ToString("g"));
                Console.WriteLine("myColor.ToString(\"G\") = {0}", myColor.ToString("G"));
    
                Console.WriteLine("myColor.ToString(\"x\") = {0}", myColor.ToString("x"));
                Console.WriteLine("myColor.ToString(\"X\") = {0}", myColor.ToString("X"));
    
                Console.WriteLine("myColor.ToString(\"d\") = {0}", myColor.ToString("d"));
                Console.WriteLine("myColor.ToString(\"D\") = {0}", myColor.ToString("D"));
    
                Console.WriteLine("myColor.ToString(\"f\") = {0}", myColor.ToString("f"));
                Console.WriteLine("myColor.ToString(\"F\") = {0}", myColor.ToString("F"));
            }

      输出结果:  

      

    MSDN:Enum.ToString 方法 (String)


    作者:SamWang
    出处:http://wangshenhe.cnblogs.com/
    本文版权归作者和博客园共有,欢迎围观转载。转载时请您务必在文章明显位置给出原文链接,谢谢您的合作。

  • 相关阅读:
    【正视CSS 03】block与position,出门在外的朋友端午节快乐
    【正视CSS 07】再看verticalalign
    【正视CSS 06】构建我们自己的世界观!
    【正视CSS 02】inline与lineheight、float、absolute的故事
    【初窥javascript奥秘之闭包】叶大侠病都好了,求不踩了:)
    【javascript面向对象之路】让我们一起来坦克大战吧01
    Python学习之三:《Dive in Python》学习笔记二
    恢复GMail选择栏(All None Read Unread….)的油猴(GreaseMonkey)脚本
    群聊天时学习到的两个JS知识(变量范围,Foreach顺序)
    利用宏自动附加到WebServer进程
  • 原文地址:https://www.cnblogs.com/wangshenhe/p/2569629.html
Copyright © 2020-2023  润新知