1、使用 ToString 方法的默認格式設置
public class Automobile
{
public string Name { get; set; } = "小王";
}
Automobile firstAuto = new Automobile();
Console.WriteLine(firstAuto.ToString());
2、重寫ToString
public class Automobile2
{
public string Name { get; set; } = "小王";
public override string ToString()
{
return Name;
}
}
Automobile2 firstAuto2 = new Automobile2();
Console.WriteLine(firstAuto2.ToString());
3、枚舉格式字符串
DayOfWeek thisDay = DayOfWeek.Monday;
string[] formatStrings = { "G", "F", "D", "X" };
foreach (string formatString in formatStrings)
Console.WriteLine(thisDay.ToString(formatString));
//
// public enum DayOfWeek
//{
// //
// // 摘要:
// // 表示星期日。
// Sunday = 0,
// //
// // 摘要:
// // 表示星期一。
// Monday = 1,
// //
// // 摘要:
// // 表示星期二。
// Tuesday = 2,
// //
// // 摘要:
// // 表示星期三。
// Wednesday = 3,
// //
// // 摘要:
// // 表示星期四。
// Thursday = 4,
// //
// // 摘要:
// // 表示星期五。
// Friday = 5,
// //
// // 摘要:
// // 表示星期六。
// Saturday = 6
//}
//g 枚舉成員的字符串表示
//f 枚舉成員的字符串表示
//d 十進制表示
//x 十六進制表示
4、標準數字格式字符串
float number1 = 123.456f;
Console.WriteLine(number1.ToString("c"));//默認保留兩位的貨幣表示
Console.WriteLine(number1.ToString("c5"));
Console.WriteLine(number1.ToString("c1"));//保留小數點後幾位的貨幣表示
int number2 = 123;
Console.WriteLine(number2.ToString("d"));
Console.WriteLine(number2.ToString("d5"));
Console.WriteLine(number2.ToString("d1"));// 十進制(“D”)格式說明符,總共保留多少位的十進制數,如果位數不足,則在前面補0,只能用於整數
float number3 = 123.456f;
Console.WriteLine(number3.ToString("e"));//指數計數法,默認小數點後六位
Console.WriteLine(number3.ToString("e1"));//指數計數法,默認小數點後1位
Console.WriteLine(number3.ToString("e2"));//指數計數法,默認小數點後2位
float number4 = 123.4566f;
Console.WriteLine(number4.ToString("f"));//保留小數後2位,並且進行了四捨五入
Console.WriteLine(number4.ToString("f1"));//保留小數後1位
Console.WriteLine(number4.ToString("f3"));//保留小數後3位
float number5 = 123.4566f;
Console.WriteLine(number5.ToString("g"));//保留所有數據
Console.WriteLine(number5.ToString("g1"));//保留1位有效位,不足以表示的,使用指數表示
Console.WriteLine(number5.ToString("g3"));//保留3位有效位
float number6 = 12557.4566f;
Console.WriteLine(number6.ToString("n"));//保留小數點後兩位,和f相比的話,差別在於整數部分超過3位時,用逗號分隔顯示
Console.WriteLine(number6.ToString("n1"));//保留1位有效位,不足以表示的,使用指數表示
Console.WriteLine(number6.ToString("n4"));//保留3位有效位
float number7 = 0.4566f;
Console.WriteLine(number7.ToString("p"));//保留小數點後兩位,並進行百分比顯示
Console.WriteLine(number7.ToString("p1"));//保留小數點後1位,並進行百分比顯示
Console.WriteLine(number7.ToString("p4"));//保留小數點後4位,並進行百分比顯示
int number8 = 255;
Console.WriteLine(number8.ToString("x"));//以兩位16進製表示
Console.WriteLine(number8.ToString("x4"));//以4位16進製表示,不足的部分,在前面補0
Console.WriteLine(number8.ToString("x6"));//以6位16進製表示,不足的部分,在前面補0
5、 自定義數字格式字符串
double value = 12345.3456;
Console.WriteLine(value.ToString("000.00"));//沒有零的地方補上零,並且控制了小數點後的位數
Console.WriteLine(String.Format("{0:000.00}", value));
Console.WriteLine(value.ToString("###.#####"));//沒有#的地方,則不顯示
Console.WriteLine(String.Format("{0:###.#####}", value));
6、標準日期和時間格式字符串
DateTime dateTime = DateTime.Now;
Console.WriteLine(dateTime.ToString("d"));//年月日
Console.WriteLine(dateTime.ToString("D"));//年月日
Console.WriteLine(dateTime.ToString("f"));//年月日,時分
Console.WriteLine(dateTime.ToString("F"));//年月日,時分秒
Console.WriteLine(dateTime.ToString("g"));//年月日,時分
Console.WriteLine(dateTime.ToString("G"));//年月日,時分秒
Console.WriteLine(dateTime.ToString("m"));//月日
Console.WriteLine(dateTime.ToString("M"));//月日
Console.WriteLine(dateTime.ToString("o"));//
Console.WriteLine(dateTime.ToString("O"));//
Console.WriteLine(dateTime.ToString("r"));//
Console.WriteLine(dateTime.ToString("R"));//
Console.WriteLine(dateTime.ToString("s"));//
Console.WriteLine(dateTime.ToString("t"));//只顯示時間,時分
Console.WriteLine(dateTime.ToString("T"));//只顯示時間,時分秒
Console.WriteLine(dateTime.ToString("u"));//
Console.WriteLine(dateTime.ToString("U"));//
Console.WriteLine(dateTime.ToString("y"));//年月
Console.WriteLine(dateTime.ToString("Y"));//年月
7、 自定義日期和時間格式字符串
DateTime date1 = new DateTime(2008, 8, 29, 19, 27, 15,789);
Console.WriteLine(date1.ToString("d,M",//一個月中的某一天表示爲從 1 到 31 的數字
CultureInfo.InvariantCulture));
Console.WriteLine(date1.ToString("dd,M",//一個月中的某一天表示爲從 1 到 31 的數字,不滿兩位數補零
CultureInfo.InvariantCulture));
Console.WriteLine(date1.ToString("ddd,M",//一個星期中的某一天,簡寫
CultureInfo.InvariantCulture));
Console.WriteLine(date1.ToString("dddd,M",//一個星期中的某一天,全稱
CultureInfo.InvariantCulture));
Console.WriteLine(date1.ToString("hh:mm:ss.f"));//f代表毫秒的最高位,一個f代表
Console.WriteLine(date1.ToString("hh:mm:ss.ff"));
Console.WriteLine(date1.ToString("hh:mm:ss.fff"));//f代表毫秒的最高位,3個f代表所有毫秒
Console.WriteLine(DateTime .Now .ToString ("yyyy-MM-dd:hh-mm-ss-fff"));//h代表12小時計時
Console.WriteLine(DateTime.Now.ToString("yyyy-MM-dd:hh-mm-ss-fff"));//H代表24小時計時
Console.WriteLine(DateTime.Now.ToString("yyyy/MM/dd:hh-mm-ss-fff"));//H代表24小時計時