C#.net常用函數(shù)列表

2010-08-28 10:49:35來源:西部e網(wǎng)作者:

1、DateTime 數(shù)字型
System.DateTime currentTime=new System.DateTime();
1.1 取當(dāng)前年月日時(shí)分秒
currentTime=System.DateTime.Now;
1.2 取當(dāng)前年
int 年=currentTime.Year;
1.3 取當(dāng)前月
int 月=currentTime.Month;
1.4 取當(dāng)前日
int 日=currentTime.Day;
1.5 取當(dāng)前時(shí)
int 時(shí)=currentTime.Hour;
1.6 取當(dāng)前分
int 分=currentTime.Minute;
1.7 取當(dāng)前秒
int 秒=currentTime.Second;
1.8 取當(dāng)前毫秒
int 毫秒=currentTime.Millisecond;
(變量可用中文)

1.9 取中文日期顯示——年月日時(shí)分
string strY=currentTime.ToString("f"); //不顯示秒

1.10 取中文日期顯示_年月
string strYM=currentTime.ToString("y");

1.11 取中文日期顯示_月日
string strMD=currentTime.ToString("m");

1.12 取中文年月日
string strYMD=currentTime.ToString("D");

1.13 取當(dāng)前時(shí)分,格式為:14:24
string strT=currentTime.ToString("t");

1.14 取當(dāng)前時(shí)間,格式為:2003-09-23T14:46:48
string strT=currentTime.ToString("s");

1.15 取當(dāng)前時(shí)間,格式為:2003-09-23 14:48:30Z
string strT=currentTime.ToString("u");

1.16 取當(dāng)前時(shí)間,格式為:2003-09-23 14:48
string strT=currentTime.ToString("g");

1.17 取當(dāng)前時(shí)間,格式為:Tue, 23 Sep 2003 14:52:40 GMT
string strT=currentTime.ToString("r");

1.18獲得當(dāng)前時(shí)間 n 天后的日期時(shí)間
DateTime newDay = DateTime.Now.AddDays(100);

1.19獲得當(dāng)前時(shí)間是第幾周
using   System.Globalization;    
GregorianCalendar   gc   =   new   GregorianCalendar();  
Console.WriteLine(gc.GetWeekOfYear(DateTime.Now,CalendarWeekRule.FirstDay,DayOfWeek.Monday));

1.20 計(jì)算兩個(gè)日期差

DateTime time1 =new DateTime(1982,4,24,14,23,06);
DateTime time2 =new DateTime(1982,1,21,8,16,32);

TimeSpan ts= time2.Subtract(time1);
string timespan = "相差:"
+ts.Days.ToString()+"天"
+ts.Hours.ToString()+"小時(shí)"
+ts.Minutes.ToString()+"分鐘"
+ts.Seconds.ToString()+"秒";
  
2、Int32.Parse(變量) Int32.Parse("常量")
字符型轉(zhuǎn)換 轉(zhuǎn)為32位數(shù)字型

3、 變量.ToString()
字符型轉(zhuǎn)換 轉(zhuǎn)為字符串
12345.ToString("n"); //生成 12,345.00
12345.ToString("C"); //生成 ¥12,345.00
12345.ToString("e"); //生成 1.234500e+004
12345.ToString("f4"); //生成 12345.0000
12345.ToString("x"); //生成 3039 (16進(jìn)制)
12345.ToString("p"); //生成 1,234,500.00%


4、變量.Length 數(shù)字型
取字串長度:
如: string str="中國";
int Len = str.Length ; //Len是自定義變量, str是求測的字串的變量名

5、System.Text.Encoding.Default.GetBytes(變量)
字碼轉(zhuǎn)換 轉(zhuǎn)為比特碼
如:byte[] bytStr = System.Text.Encoding.Default.GetBytes(str);
然后可得到比特長度:
len = bytStr.Length;

6、System.Text.StringBuilder("")
字符串相加,(+號是不是也一樣?)
如:System.Text.StringBuilder sb = new System.Text.StringBuilder("");
sb.Append("中華");
sb.Append("人民");
sb.Append("共和國");

7、變量.Substring(參數(shù)1,參數(shù)2);
截取字串的一部分,參數(shù)1為左起始位數(shù),參數(shù)2為截取幾位。
如:string s1 = str.Substring(0,2);

8、String user_IP=Request.ServerVariables["REMOTE_ADDR"].ToString();
取遠(yuǎn)程用戶IP地址

9、穿過代理服務(wù)器取遠(yuǎn)程用戶真實(shí)IP地址:
if(Request.ServerVariables["HTTP_VIA"]!=null){
string user_IP=Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();
}else{
string user_IP=Request.ServerVariables["REMOTE_ADDR"].ToString();
}

10、 Session["變量"];
存取Session值;
如,賦值: Session["username"]="小布什";

取值: Object objName=Session["username"];
String strName=objName.ToString();
清空: Session.RemoveAll();

11、String str=Request.QueryString["變量"];
用超鏈接傳送變量。
如在任一頁中建超鏈接:<a href=Edit.aspx?fbid=23>點(diǎn)擊</a>
在Edit.aspx頁中取值:String str=Request.QueryString["fdid"];

12、DOC對象.CreateElement("新建節(jié)點(diǎn)名");
創(chuàng)建XML文檔新節(jié)點(diǎn)

13、父節(jié)點(diǎn).AppendChild(子節(jié)點(diǎn));
將新建的子節(jié)點(diǎn)加到XML文檔父節(jié)點(diǎn)下

14、 父節(jié)點(diǎn).RemoveChild(節(jié)點(diǎn));
刪除節(jié)點(diǎn)

15、Response
Response.Write("字串");
Response.Write(變量);
向頁面輸出。

Response.Redirect("URL地址");
跳轉(zhuǎn)到URL指定的頁面

16、char.IsWhiteSpce(字串變量,位數(shù))——邏輯型
查指定位置是否空字符;
如:
string str="中國 人民";
Response.Write(char.IsWhiteSpace(str,2)); //結(jié)果為:True, 第一個(gè)字符是0位,2是第三個(gè)字符。

17、char.IsPunctuation('字符') --邏輯型
查字符是否是標(biāo)點(diǎn)符號
如:Response.Write(char.IsPunctuation('A')); //返回:False

18、(int)'字符'
把字符轉(zhuǎn)為數(shù)字,查代碼點(diǎn),注意是單引號。
如:
Response.Write((int)'中'); //結(jié)果為中字的代碼:20013

19、(char)代碼
把數(shù)字轉(zhuǎn)為字符,查代碼代表的字符。
如:
Response.Write((char)22269); //返回“國”字。

20、 Trim()
清除字串前后空格

21 、字串變量.Replace("子字串","替換為")
字串替換
如:
string str="中國";
str=str.Replace("國","央"); //將國字換為央字
Response.Write(str); //輸出結(jié)果為“中央”

再如:(這個(gè)非常實(shí)用)

string str="這是<script>腳本";
str=str.Replace("<","<font><</font>"); //將左尖括號替換為<font> 與 < 與 </font> (或換為<,但估計(jì)經(jīng)XML存諸后,再提出仍會還原)
Response.Write(str); //顯示為:“這是<script>腳本”

如果不替換,<script>將不顯示,如果是一段腳本,將運(yùn)行;而替換后,腳本將不運(yùn)行。
這段代碼的價(jià)值在于:你可以讓一個(gè)文本中的所有HTML標(biāo)簽失效,全部顯示出來,保護(hù)你的具有交互性的站點(diǎn)。
具體實(shí)現(xiàn):將你的表單提交按鈕腳本加上下面代碼:
string strSubmit=label1.Text; //label1是你讓用戶提交數(shù)據(jù)的控件ID。
strSubmit=strSubmit.Replace("<","<font><</font>");
然后保存或輸出strSubmit。
用此方法還可以簡單實(shí)現(xiàn)UBB代碼。

22、Math.Max(i,j)
取i與j中的最大值
如 int x=Math.Max(5,10); // x將取值 10

23、字串對比一般都用: if(str1==str2){ } , 但還有別的方法:

(1)、
string str1; str2
//語法: str1.EndsWith(str2); __檢測字串str1是否以字串str2結(jié)尾,返回布爾值.如:
if(str1.EndsWith(str2)){ Response.Write("字串str1是以"+str2+"結(jié)束的"); }

(2)、
//語法:str1.Equals(str2); __檢測字串str1是否與字串str2相等,返回布爾值,用法同上.

(3)、
//語法 Equals(str1,str2); __檢測字串str1是否與字串str2相等,返回布爾值,用法同上.

24、IndexOf() 、LastIndexOf()
查找字串中指定字符或字串首次(最后一次)出現(xiàn)的位置,返回索引值,如:
str1.IndexOf("字"); //查找“字”在str1中的索引值(位置)
str1.IndexOf("字串");//查找“字串”的第一個(gè)字符在str1中的索引值(位置)
str1.IndexOf("字串",3,2);//從str1第4個(gè)字符起,查找2個(gè)字符,查找“字串”的第一個(gè)字符在str1中的索引值(位置)

25、Insert()
在字串中指定索引位插入指定字符。如:
str1.Insert(1,"字");在str1的第二個(gè)字符處插入“字”,如果str1="中國",插入后為“中字國”;

26、PadLeft()、PadRight()
在字串左(或右)加空格或指定char字符,使字串達(dá)到指定長度,如:
<%
string str1="中國人";
str1=str1.PadLeft(10,'1'); //無第二參數(shù)為加空格
Response.Write(str1); //結(jié)果為“1111111中國人” , 字串長為10
%>

27、Remove()
從指定位置開始刪除指定數(shù)的字符
<%
string str1="我是薩達(dá)姆的崇拜者之一";
Response.Write(str1.Remove(5,4)); //結(jié)果為“我是薩達(dá)姆之一”
%>

28 MD5加密
private static string MD5(string str)
{
  MD5 md5 = new MD5CryptoServiceProvider();
  byte[] result = md5.ComputeHash(System.Text.Encoding.Default.GetBytes(str));
  string str2 = "";
  for(int i=0;i<result.Length;i++)
  {
    str2 += string.Format("{0:x}",result[i]);
  }
  return str2.ToLower ();
}

30 DataGrid的鍵盤的下鍵
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
 if (keyData == Keys.Down)
 {
  MessageBox.Show("down");
 }
 return base.ProcessCmdKey (ref msg, keyData);
}

31 ASP.NET 帶參數(shù) exe 文件
System.Diagnostics.Process.Start("cmd",@"/c mysqldump --user=root --password=123 mysql > c:\db.sql -t");//用途最多的
System.Diagnostics.Process.Start("notepad.exe","c:\\record.txt");
System.Diagnostics.Process.Start("IEXPLORE.EXE","

32 綁定DataGrid指定的行數(shù)
BindingManagerBase bm=dataGrid1.BindingContext[dataGrid1.DataSource,dataGrid1.DataMember];
if(bm.Count==0){return;}
DataRow dr=((System.Data.DataRowView)bm.Current).Row;

33 C#調(diào)出Outlook界面并發(fā)送郵件
System.Diagnostics.Process.Start( "
mailto:abc@abc.com?subject=標(biāo)題&body=郵件內(nèi)容");

調(diào)用dos程序,不會顯示dos介面
System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo.FileName="cmd.exe";
p.StartInfo.UseShellExecute=false;
p.StartInfo.RedirectStandardInput=true;
p.StartInfo.RedirectStandardOutput = true; 
p.StartInfo.RedirectStandardError = true; 
p.StartInfo.CreateNoWindow = true;

p.Start(); 
p.StandardInput.WriteLine("net start mysql"); 
p.StandardInput.WriteLine("exit"); 
p.StandardOutput.ReadToEnd(); 
p.Close();

關(guān)鍵詞:C#

贊助商鏈接: