c#格式化字符串

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小时计时
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

c#上位机

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值