自定义格式化字符串

----------------------------------------------主程序

目前创新互联已为成百上千的企业提供了网站建设、域名、网站空间、网站托管、服务器托管、企业网站设计、张湾网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication4
{
    class Program
    {
        static void Main(string[] args)
        {
            //自定义格式化字符串
            Voctor v = new Voctor(3d, 4d, 5d);
            Console.WriteLine("{0:zhang}", v);//Zhang:(3,4,5)
            Console.WriteLine("{0:liu}", v);//Liu:(3,4,5)
            Console.ReadKey();
        }
    }
}

----------------------------------------------Voctor.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication4
{
    //自定义格式化字符串类或结构必须实现IFormattable接口
    public class Voctor : IFormattable
    {
        double x, y, z;

        public Voctor(double d1, double d2, double d3)
        {
            this.x = d1;
            this.y = d2;
            this.z = d3;
        }
        //format表示传递的说明符,例如N(不用考虑formatProvider)
        public string ToString(string format, IFormatProvider formatProvider)
        {
            if (format == null)
            {
                return ToString();
            }
            //不区分大小写
            string formatUpper = format.ToUpper();
            switch (formatUpper)
            {
                case "ZHANG":
                    return "Zhang:" + ToString();
                case "LIU":
                    return "Liu:" + ToString();
                default:
                    return ToString();
            }
        }
        public override string ToString()
        {
            return string.Format("({0},{1},{2})", x, y, z);
        }
    }
}

 

自定义格式化字符串

自定义格式化字符串

 

 


分享标题:自定义格式化字符串
标题链接:http://hbruida.cn/article/gccgje.html