欢迎光临Jacob·雅各布的博客 !|

Jacob·雅各布

园龄:13年5个月粉丝:5关注:16

c#格式化字符串 toString()

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小时计时
posted @   Jacob·雅各布  阅读(269)  评论(1编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起
  1. 1 青鸟-ブルーバード いきものがかり
青鸟-ブルーバード - いきものがかり
00:00 / 00:00
An audio error has occurred.

unravel - TK from 凛冽时雨 (TK from 凛として時雨)

词:TK

曲:TK

教えて 教えてよ その仕組みを

僕の中に誰がいるの?

壊れた 壊れたよ この世界で

君が笑う 何も見えずに

壊れた僕なんてさ 息を止めて

ほどけない もう ほどけないよ

真実さえ freeze

壊せる 壊せない 狂える 狂えない

あなたを見つけて 揺れた

歪んだ世界にだんだん僕は

透き通って見えなくなって

見つけないで 僕のことを

見つめないで

誰かが描いた世界の中で

あなたを傷つけたくはないよ

覚えていて 僕のことを

鮮やかなまま

無限に広がる孤独が絡まる

無邪気に笑った記憶が刺さって

動けない 動けない 動けない

動けない 動けない 動けないよ

unravelling the world

変わってしまった

変えられなかった

2つが絡まる 2人が滅びる

壊せる 壊せない 狂える 狂えない

あなたを汚せないよ 揺れた

歪んだ世界にだんだん僕は

透き通って見えなくなって

見つけないで 僕のことを

見つめないで

誰かが仕組んだ孤独な罠に

未来がほどけてしまう前に

思い出して 僕のことを

鮮やかなまま

忘れないで 忘れないで

忘れないで 忘れないで

変わってしまったことにparalyze

変えられないことだらけのparadise

覚えていて 僕のことを

教えて 教えて

僕の中に誰がいるの?