String.Format方法是我们在.Net应用开发时经常使用到的,它的灵活使用有时能够达到事半功倍的效果,下面我们就借用MSDN上的一个示例来向大家展示String.Format的各种用法。


该示例展示了Numeric、DateTime和Enumeration标准格式的使用,另外,我们也可以根据需要自定义我们需要的格式。


 


 


String.Format()方法_其他

String.Format()方法_其他// This code example demonstrates the String.Format() method.

String.Format()方法_其他

String.Format()方法_其他using System;

String.Format()方法_其他class Sample 

String.Format()方法_应用开发_06String.Format()方法_自定义_07...{

String.Format()方法_.net_08String.Format()方法_.net_09    enum Color ...{Yellow = 1, Blue, Green};

String.Format()方法_自定义_10

String.Format()方法_自定义_10    static DateTime thisDate = DateTime.Now;

String.Format()方法_自定义_10

String.Format()方法_自定义_10    public static void Main() 

String.Format()方法_.net_08String.Format()方法_.net_09    ...{

String.Format()方法_自定义_10        // Store the output of the String.Format method in a string.

String.Format()方法_自定义_10        string s = "";

String.Format()方法_自定义_10

String.Format()方法_自定义_10        // Format a negative integer or floating-point number in various ways.

String.Format()方法_自定义_10        Console.WriteLine("Standard Numeric Format Specifiers");

String.Format()方法_自定义_10        s = String.Format(

String.Format()方法_自定义_10            "(C) Currency: . . . . . . . . {0:C} " +

String.Format()方法_自定义_10            "(D) Decimal:. . . . . . . . . {0:D} " +

String.Format()方法_自定义_10            "(E) Scientific: . . . . . . . {1:E} " +

String.Format()方法_自定义_10            "(F) Fixed point:. . . . . . . {1:F} " +

String.Format()方法_自定义_10            "(G) General:. . . . . . . . . {0:G} " +

String.Format()方法_自定义_10            "    (default):. . . . . . . . {0} (default = 'G') " +

String.Format()方法_自定义_10            "(N) Number: . . . . . . . . . {0:N} " +

String.Format()方法_自定义_10            "(P) Percent:. . . . . . . . . {1:P} " +

String.Format()方法_自定义_10            "(R) Round-trip: . . . . . . . {1:R} " +

String.Format()方法_自定义_10            "(X) Hexadecimal:. . . . . . . {0:X} ",

String.Format()方法_自定义_10            -123, -123.45f); 

String.Format()方法_自定义_10        Console.WriteLine(s);

String.Format()方法_自定义_10

String.Format()方法_自定义_10        // Format the current date in various ways.

String.Format()方法_自定义_10        Console.WriteLine("Standard DateTime Format Specifiers");

String.Format()方法_自定义_10        s = String.Format(

String.Format()方法_自定义_10            "(d) Short date: . . . . . . . {0:d} " +

String.Format()方法_自定义_10            "(D) Long date:. . . . . . . . {0:D} " +

String.Format()方法_自定义_10            "(t) Short time: . . . . . . . {0:t} " +

String.Format()方法_自定义_10            "(T) Long time:. . . . . . . . {0:T} " +

String.Format()方法_自定义_10            "(f) Full date/short time: . . {0:f} " +

String.Format()方法_自定义_10            "(F) Full date/long time:. . . {0:F} " +

String.Format()方法_自定义_10            "(g) General date/short time:. {0:g} " +

String.Format()方法_自定义_10            "(G) General date/long time: . {0:G} " +

String.Format()方法_自定义_10            "    (default):. . . . . . . . {0} (default = 'G') " +

String.Format()方法_自定义_10            "(M) Month:. . . . . . . . . . {0:M} " +

String.Format()方法_自定义_10            "(R) RFC1123:. . . . . . . . . {0:R} " +

String.Format()方法_自定义_10            "(s) Sortable: . . . . . . . . {0:s} " +

String.Format()方法_自定义_10            "(u) Universal sortable: . . . {0:u} (invariant) " +

String.Format()方法_自定义_10            "(U) Universal sortable: . . . {0:U} " +

String.Format()方法_自定义_10            "(Y) Year: . . . . . . . . . . {0:Y} ", 

String.Format()方法_自定义_10            thisDate);

String.Format()方法_自定义_10        Console.WriteLine(s);

String.Format()方法_自定义_10

String.Format()方法_自定义_10        // Format a Color enumeration value in various ways.

String.Format()方法_自定义_10        Console.WriteLine("Standard Enumeration Format Specifiers");

String.Format()方法_自定义_10        s = String.Format(

String.Format()方法_自定义_10            "(G) General:. . . . . . . . . {0:G} " +

String.Format()方法_自定义_10            "    (default):. . . . . . . . {0} (default = 'G') " +

String.Format()方法_自定义_10            "(F) Flags:. . . . . . . . . . {0:F} (flags or integer) " +

String.Format()方法_自定义_10            "(D) Decimal number: . . . . . {0:D} " +

String.Format()方法_自定义_10            "(X) Hexadecimal:. . . . . . . {0:X} ", 

String.Format()方法_自定义_10            Color.Green);       

String.Format()方法_自定义_10        Console.WriteLine(s);

String.Format()方法_自定义_66    }

String.Format()方法_.net_67}


 


以上代码的输出结果如下:


 


Standard Numeric Format Specifiers


(C) Currency: . . . . . . . . ¥-123.00


(D) Decimal:. . . . . . . . . -123


(E) Scientific: . . . . . . . -1.234500E+002


(F) Fixed point:. . . . . . . -123.45


(G) General:. . . . . . . . . -123


    (default):. . . . . . . . -123 (default = 'G')


(N) Number: . . . . . . . . . -123.00


(P) Percent:. . . . . . . . . -12,345.00%


(R) Round-trip: . . . . . . . -123.45


(X) Hexadecimal:. . . . . . . FFFFFF85


 


Standard DateTime Format Specifiers


(d) Short date: . . . . . . . 2007-1-29


(D) Long date:. . . . . . . . 2007年1月29日


(t) Short time: . . . . . . . 13:57


(T) Long time:. . . . . . . . 13:57:42


(f) Full date/short time: . . 2007年1月29日 13:57


(F) Full date/long time:. . . 2007年1月29日 13:57:42


(g) General date/short time:. 2007-1-29 13:57


(G) General date/long time: . 2007-1-29 13:57:42


    (default):. . . . . . . . 2007-1-29 13:57:42 (default = 'G')


(M) Month:. . . . . . . . . . 1月29日


(R) RFC1123:. . . . . . . . . Mon, 29 Jan 2007 13:57:42 GMT


(s) Sortable: . . . . . . . . 2007-01-29T13:57:42


(u) Universal sortable: . . . 2007-01-29 13:57:42Z (invariant)


(U) Universal sortable: . . . 2007年1月29日 5:57:42


(Y) Year: . . . . . . . . . . 2007年1月


 


Standard Enumeration Format Specifiers


(G) General:. . . . . . . . . Green


    (default):. . . . . . . . Green (default = 'G')


(F) Flags:. . . . . . . . . . Green (flags or integer)


(D) Decimal number: . . . . . 3


(X) Hexadecimal:. . . . . . . 00000003