C#常见应用函数实例小结
本文实例总结了C#常见应用函数。分享给大家供大家参考,具体如下:
1、页面写CS代码(代码内嵌)
<%@ImportNamespace="System"%> <%@ImportNamespace="System.Collections.Generic"%> <Scriptrunat="server"> publicintuserId=0; protectedvoidPage_Load(objectsender,EventArgse) { userId=Convert.ToInt32(Request.QueryString["UserID"]); Response.Write(userId); } </Script> <% if(userId>0){ msg="欢迎登录!"; } else{ msg="未找到用户"; } %> <%=this.msg%>
2、获取时间间隔
///<summary> ///获取时间间隔(模拟微博发布文章的时间间隔) ///</summary> ///<paramname="date"></param> ///<returns></returns> publicstringGetDateStr(DateTimedate) { if(date<DateTime.Now) { TimeSpants=DateTime.Now-date; if(ts.TotalHours<1&&ts.TotalMinutes<1) { return"1分钟前"; } elseif(ts.TotalHours<1&&ts.TotalMinutes>0) { returnConvert.ToInt32(ts.TotalMinutes)+"分钟前"; } elseif(ts.TotalHours<4) { returnConvert.ToInt32(ts.TotalHours)+"小时前"; } elseif(DateTime.Now.Date==date.Date) { returndate.ToString("HH:mm"); } else { returndate.ToString("yyyy-MM-dd"); } } returndate.ToString("yyyy-MM-dd"); }
3、遍历Url中的参数列表
///<summary> ///遍历Url中的参数列表 ///</summary> ///<returns>如:(?userId=43&userType=2)</returns> publicstringGetUrlParam() { stringurlParam=""; if(Request.QueryString.Count>0) { urlParam="?"; NameValueCollectionkeyVals=Request.QueryString; foreach(stringkeyinkeyVals.Keys) { urlParam+=key+"="+keyVals[key]+"&"; } urlParam=urlParam.Substring(0,urlParam.LastIndexOf('&')); } returnurlParam; }
4、清除文本HTML码
usingSystem.Text.RegularExpressions; ///<summary> ///清除文本HTML码 ///</summary> publicstringRemoveHtmlTag(stringhtmlStr) { if(string.IsNullOrEmpty(htmlStr)) returnstring.Empty; returnRegex.Replace(htmlStr,@"<[^>]*>",""); }
5、反射通过类名创建类实例
usingSystem.Reflection; ///<summary> ///反射通过类名创建类实例 ///</summary> publicvoidReflecTest() { ObjectobjClass=Assembly.GetExecutingAssembly().CreateInstance("MyStudy.BLL.BookInfoBLL");//参数:类的完全限定名,无需类的后缀名 if(objClass!=null) { BookInfoBLLbll=(BookInfoBLL)objClass; } }
6、货币类型转换
///<summary> ///货币 ///</summary> ///<paramname="obj"></param> ///<returns></returns> publicstaticstringToMoney(objectobj) { returnString.Format("{0:C}",obj); }
7、小数点位数
//1.小数点位数 stringstr1=String.Format("{0:F1}",56789);//result:56789.0 stringstr2=String.Format("{0:F2}",56789);//result:56789.00 stringstr3=String.Format("{0:N1}",56789);//result:56,789.0 stringstr4=String.Format("{0:N2}",56789);//result:56,789.00 stringstr5=String.Format("{0:N3}",56789);//result:56,789.000 stringstr6=(56789/100.0).ToString("#.##");//result:567.89 stringstr7=(56789/100).ToString("#.##");//result:567 //2.保留N位,四舍五入. decimald=decimal.Round(decimal.Parse("0.55555"),2); //3.保留N位四舍五入 Math.Round(0.55555,2);
8、使用TryGetValue改善获取字典值得性能
使用TryGetValue在大量取值时性能比ContainsKey提高一倍。
Dictionary<int,String>dic=newDictionary<int,String>(); dic.Add(1,"张三"); dic.Add(2,"李四"); stringname=""; //错误写法,效率底 if(dic.ContainsKey(1)) { name=dic[1]; Console.WriteLine(name); } //正确写法,效率提高一倍 if(dic.TryGetValue(1,outname)) { Console.WriteLine(name); }
更多关于C#相关内容感兴趣的读者可查看本站专题:《C#常见控件用法教程》、《WinForm控件用法总结》、《C#数据结构与算法教程》、《C#面向对象程序设计入门教程》及《C#程序设计之线程使用技巧总结》
希望本文所述对大家C#程序设计有所帮助。