c#格式化说明总结

来源:互联网 发布:少女前线机枪数据 编辑:程序博客网 时间:2024/06/08 12:38

转载请注明出自朱朱家园http://blog.csdn.net/zhgl7688

1、String类型是不可变的,一旦被赋值就不能改变了,当需要频繁改变一个字符串时,应使用StringBuilder。

            string s1 = "rock";            string s2 = s1;            listBox1.Items.Add(s2.Equals(s1));                //结果:true            listBox1.Items.Add("s1:"+s1);                     //结果:s1:rock            listBox1.Items.Add("s2:"+s2);                     //结果:s2:rock             s2= s2.Replace("oc", "ll");            listBox1.Items.Add("s1:" + s1);                  //结果:s1:rock            listBox1.Items.Add("s2:" + s2);                 //结果:s2:rllk

2、引用类型的结果

            Student st1 = new Student() { StudentName = "1" };            Student st2 = st1;            listBox1.Items.Add("st1"+st1.StudentName);         //结果:st1:1            listBox1.Items.Add("st2"+st2.StudentName);         //结果:st2:1            st2.StudentName = "2";            listBox1.Items.Add("st1" + st1.StudentName);       //结果:st1:2            listBox1.Items.Add("st2" + st2.StudentName);       //结果:st2:2           listBox1.Items .Add ( st2.Equals(s1));             //false

3、内置字符串

           const string str1 = "test";           listBox1.Items.Add(string.IsInterned(str1) != null);        //结果:true            string str2 = "test";           listBox1.Items.Add(string.IsInterned(str2) != null);        //结果:true            str2 += "test";           listBox1.Items.Add(string.IsInterned(str2) != null);        //结果:false

编程指定为内置intern

           string.Intern(str2);           listBox1.Items.Add(string.IsInterned(str2) != null);            //结果:true         

4、格式化数字

字符

说明

示例

输出

C货币string.Format("{0:C3}", 2)$2.000D十进制string.Format("{0:D3}", 2)002E科学计数法1.20E+0011.20E+001G常规string.Format("{0:G}", 2)2N用分号隔开的数字string.Format("{0:N}", 250000)250,000.00X十六进制string.Format("{0:X000}", 12)C

string.Format("{0:000.000}", 12.2)012.200
           double val = Math.PI;            Console.WriteLine(val.ToString());                   //3.14159265358979            Console.WriteLine(val.ToString("E"));               //3.141593E+000            Console.WriteLine(val.ToString("F3"));              //3.142           int   val1 = 65535;           Console.WriteLine(val1.ToString("x"));                 //ffff           Console.WriteLine(val1.ToString("X"));                 //FFFF            Single val2 = 0.653F;            Console.WriteLine(val2.ToString("p"));                  //65.30%            Console.WriteLine(val2.ToString("p1"));                 //65.3%            object myObj = NumberFormatInfo.CurrentInfo.Clone() as NumberFormatInfo;            NumberFormatInfo myFormat = myObj as NumberFormatInfo;            myFormat.PercentPositivePattern = 0;            Console.WriteLine(val2.ToString("p", myFormat));            //65.30 %            Console.WriteLine(val2.ToString("p1", myFormat));           //65.3 %            double val3 = 12345678900000.89;            Console.WriteLine(val3.ToString());                     //12345678900000.9            Console.WriteLine(val3.ToString("c"));                  //¥12,345,678,900,000.90            //自定义格式化:数值前加“@”,小数点用“/”替换,按自定义数组进行分组,分组用“-”            int[] groupSize = { 1, 1, 2, 4 };                            NumberFormatInfo myCurrency = myObj as NumberFormatInfo;            myCurrency.CurrencySymbol = "@";            myCurrency.CurrencyDecimalSeparator = "/";            myCurrency.CurrencyGroupSeparator = "-";            myCurrency.CurrencyGroupSizes = groupSize;            Console.WriteLine(val3.ToString("C", myCurrency));          //@12-3456-7890-00-0-0/90            

5、格式化日期


            DateTime dateValue = DateTime.Now;            Console.WriteLine(dateValue.ToString());                 //2015/3/2 22:57:04            Console.WriteLine(dateValue.ToShortDateString());       //2015/3/2            Console.WriteLine(dateValue.ToString("f"));             //2015年3月2日 22:57            Console.WriteLine(dateValue.ToString("y"));             //2015年3月            Console.WriteLine(dateValue.ToString("T"));             //22:57:04            //自定义日期字符串的格式化            string[] myDays ={"RelaxDay","ToughDay","BlahDay","LazyDay",                             "ProductiveDay","PartyDay","HomeDay"};            object myObj = DateTimeFormatInfo.CurrentInfo.Clone();            DateTimeFormatInfo myDateTime = myObj as DateTimeFormatInfo;            myDateTime.DayNames = myDays;            myDateTime.FullDateTimePattern = "dddd,dd MMMM yyyy HH:mm:ss";            Console.WriteLine(dateValue.ToString("F", myDateTime));         //ToughDay,02 三月 2015 23:18:30

6、格式化枚举

        enum Music { Rock = 1, Blues = 2, Jazz = 3, Classical = 4 }

            Music myMusic = Music.Blues;            Console.WriteLine(myMusic.ToString());<span style="white-space:pre"></span>//Blues            Console.WriteLine(myMusic.ToString("d"));<span style="white-space:pre"></span>//2            DayOfWeek day = DayOfWeek.Friday;            Console.WriteLine(string.Format("My favorite day is {0:G}", day));<span style="white-space:pre"></span>//My favorite day is Friday


转载请注明出自朱朱家园http://blog.csdn.net/zhgl7688



0 0
原创粉丝点击