C#常見(jiàn)應(yīng)用函數(shù)實(shí)例小結(jié)
本文實(shí)例總結(jié)了C#常見(jiàn)應(yīng)用函數(shù)。分享給大家供大家參考,具體如下:
1、頁(yè)面寫CS代碼(代碼內(nèi)嵌)
<%@ Import Namespace="System" %>
<%@ Import Namespace="System.Collections.Generic" %>
<Script runat="server">
public int userId = 0;
protected void Page_Load(object sender, EventArgs e)
{
userId =Convert.ToInt32(Request.QueryString["UserID"]);
Response.Write(userId);
}
</Script>
<%
if (userId > 0){
msg = "歡迎登錄!";
}
else {
msg = "未找到用戶";
}
%>
<%= this.msg %>
2、獲取時(shí)間間隔
/// <summary>
/// 獲取時(shí)間間隔(模擬微博發(fā)布文章的時(shí)間間隔)
/// </summary>
/// <param name="date"></param>
/// <returns></returns>
public string GetDateStr(DateTime date)
{
if (date < DateTime.Now)
{
TimeSpan ts = DateTime.Now - date;
if (ts.TotalHours < 1 && ts.TotalMinutes < 1)
{
return "1分鐘前";
}
else if (ts.TotalHours < 1 && ts.TotalMinutes > 0)
{
return Convert.ToInt32(ts.TotalMinutes) + "分鐘前";
}
else if (ts.TotalHours < 4)
{
return Convert.ToInt32(ts.TotalHours) + "小時(shí)前";
}
else if (DateTime.Now.Date == date.Date)
{
return date.ToString("HH:mm");
}
else
{
return date.ToString("yyyy-MM-dd");
}
}
return date.ToString("yyyy-MM-dd");
}
3、遍歷Url中的參數(shù)列表
/// <summary>
/// 遍歷Url中的參數(shù)列表
/// </summary>
/// <returns>如:(?userId=43&userType=2)</returns>
public string GetUrlParam()
{
string urlParam = "";
if (Request.QueryString.Count > 0)
{
urlParam = "?";
NameValueCollection keyVals = Request.QueryString;
foreach (string key in keyVals.Keys)
{
urlParam += key + "=" + keyVals[key] + "&";
}
urlParam = urlParam.Substring(0, urlParam.LastIndexOf('&'));
}
return urlParam;
}
4、清除文本HTML碼
using System.Text.RegularExpressions;
/// <summary>
/// 清除文本HTML碼
/// </summary>
public string RemoveHtmlTag(string htmlStr)
{
if (string.IsNullOrEmpty(htmlStr))
return string.Empty;
return Regex.Replace(htmlStr, @"<[^>]*>", "");
}
5、反射 通過(guò)類名創(chuàng)建類實(shí)例
using System.Reflection;
/// <summary>
/// 反射 通過(guò)類名創(chuàng)建類實(shí)例
/// </summary>
public void ReflecTest()
{
Object objClass = Assembly.GetExecutingAssembly().CreateInstance("MyStudy.BLL.BookInfoBLL"); //參數(shù):類的完全限定名,無(wú)需類的后綴名
if (objClass != null)
{
BookInfoBLL bll = (BookInfoBLL)objClass;
}
}
6、貨幣類型轉(zhuǎn)換
/// <summary>
/// 貨幣
/// </summary>
/// <param name="obj"></param>
/// <returns></returns>
public static string ToMoney(object obj)
{
return String.Format("{0:C}", obj);
}
7、小數(shù)點(diǎn)位數(shù)
//1.小數(shù)點(diǎn)位數(shù)
string str1 = String.Format("{0:F1}", 56789); //result: 56789.0
string str2 = String.Format("{0:F2}", 56789); //result: 56789.00
string str3 = String.Format("{0:N1}", 56789); //result: 56,789.0
string str4 = String.Format("{0:N2}", 56789); //result: 56,789.00
string str5 = String.Format("{0:N3}", 56789); //result: 56,789.000
string str6 = (56789 / 100.0).ToString("#.##"); //result: 567.89
string str7 = (56789 / 100).ToString("#.##"); //result: 567
//2.保留N位,四舍五入 .
decimal d= decimal.Round(decimal.Parse("0.55555"),2);
//3.保留N位四舍五入
Math.Round(0.55555, 2);
8、使用TryGetValue改善獲取字典值得性能
使用TryGetValue在大量取值時(shí)性能比ContainsKey提高一倍。
Dictionary<int, String> dic = new Dictionary<int, String>();
dic.Add(1,"張三");
dic.Add(2,"李四");
string name = "";
//錯(cuò)誤寫法,效率底
if (dic.ContainsKey(1))
{
name = dic[1];
Console.WriteLine(name);
}
//正確寫法,效率提高一倍
if (dic.TryGetValue(1, out name))
{
Console.WriteLine(name);
}
更多關(guān)于C#相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《C#常見(jiàn)控件用法教程》、《WinForm控件用法總結(jié)》、《C#數(shù)據(jù)結(jié)構(gòu)與算法教程》、《C#面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》及《C#程序設(shè)計(jì)之線程使用技巧總結(jié)》
希望本文所述對(duì)大家C#程序設(shè)計(jì)有所幫助。
相關(guān)文章
C#中this用法系列(二) 通過(guò)this修飾符為原始類型擴(kuò)展方法
定義一個(gè)靜態(tài)類,類中定義靜態(tài)方法,方法中參數(shù)類型前邊加上this修飾符,即可實(shí)現(xiàn)對(duì)參數(shù)類型的方法擴(kuò)展,下面通過(guò)實(shí)例代碼給大家介紹下,需要的朋友參考下吧2016-12-12
C#利用Refit實(shí)現(xiàn)JWT自動(dòng)續(xù)期詳解
Refit?是一個(gè)受到Square的Retrofit庫(kù)(Java)啟發(fā)的自動(dòng)類型安全REST庫(kù),這篇文章主要為大家介紹了C#如何利用Refit實(shí)現(xiàn)JWT自動(dòng)續(xù)期,感興趣的可以了解下2023-08-08
WPF實(shí)現(xiàn)炫酷的界面交互效果的代碼詳解
在當(dāng)今競(jìng)爭(zhēng)激烈的軟件市場(chǎng)中,用戶界面的交互體驗(yàn)至關(guān)重要,一個(gè)擁有炫酷動(dòng)畫特效的應(yīng)用程序,不僅能吸引用戶的注意力,還能顯著提升用戶與界面的交互流暢度和愉悅感,本文將深入剖析WPF動(dòng)畫特效的各個(gè)方面,通過(guò)大量詳細(xì)的代碼示例和對(duì)關(guān)鍵概念的深入解釋2025-02-02
C#實(shí)現(xiàn)漢字轉(zhuǎn)拼音或轉(zhuǎn)拼音首字母的方法
這篇文章主要介紹了C#實(shí)現(xiàn)漢字轉(zhuǎn)拼音或轉(zhuǎn)拼音首字母的方法,涉及C#操作數(shù)組、遍歷及正則匹配的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-07-07
C#實(shí)現(xiàn)在兩個(gè)數(shù)字之間生成隨機(jī)數(shù)的方法
這篇文章主要介紹了C#實(shí)現(xiàn)在兩個(gè)數(shù)字之間生成隨機(jī)數(shù)的方法,在一些特殊場(chǎng)景會(huì)用到哦,需要的朋友可以參考下2014-08-08
使用C#如何創(chuàng)建人名或其他物體隨機(jī)分組
文章描述了一個(gè)隨機(jī)分配人員到多個(gè)團(tuán)隊(duì)的代碼示例,包括將人員列表隨機(jī)化并根據(jù)組數(shù)分配到不同組,最后按組號(hào)排序顯示結(jié)果2025-01-01

