C#中一些實用的函數

來源:互聯網
上載者:User

穿過Proxy 伺服器取遠端使用者真實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();
}
System.Text.Encoding.Default.GetBytes(變數)
字碼轉換 轉為位元碼
如:byte[] bytStr = System.Text.Encoding.Default.GetBytes(str);

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

16、char.IsWhiteSpce(字串變數,位元)——邏輯型
查指定位置是否Null 字元;
17、char.IsPunctuation(''''字元'''') --邏輯型
查字元是否是標點符號
如:Response.Write(char.IsPunctuation(''''A'''')); //返回:False
18、(int)''''字元''''
把字元轉為數字,查代碼點,注意是單引號。
如:
Response.Write((int)''''中''''); //結果為中字的代碼:20013

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

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

再如:(這個非常實用)

string str="這是<script>指令碼";
str=str.Replace("<","<font><</font>"); //將左角括弧替換為<font> 與 < 與 </font> (或換為<,但估計經XML存諸後,再提出仍會還原)
Response.Write(str); //顯示為:“這是<script>指令碼”

如果不替換,<script>將不顯示,如果是一段指令碼,將運行;而替換後,指令碼將不運行。
這段代碼的價值在於:你可以讓一個文本中的所有HTML標籤失效,全部顯示出來,保護你的具有互動性的網站。
具體實現:將你的表單提交按鈕指令碼加上下面代碼:
string strSubmit=label1.Text; //label1是你讓使用者提交資料的控制項ID。
strSubmit=strSubmit.Replace("<","<font><</font>");
然後儲存或輸出strSubmit。
用此方法還可以簡單實現UBB代碼。
23、字串對比一般都用: if(str1==str2){ } , 但還有別的方法:

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

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

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

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

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

26、PadLeft()、PadRight()
在字串左(或右)加空格或指定char字元,使字串達到指定長度,如:
<%
string str1="中國人";
str1=str1.PadLeft(10,''''1''''); //無第二參數為加空格
Response.Write(str1); //結果為“1111111中國人” , 字串長為10
%>
27、Remove()
從指定位置開始刪除指定數的字元
字串對比一般都用: if(str1==str2){ } , 但還有別的方法:

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

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

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

IndexOf()
尋找字串中指定字元或字串首次出現的位置,返首索引值,如:
str1.IndexOf("字"); //尋找“字”在str1中的索引值(位置)
str1.IndexOf("字串");//尋找“字串”的第一個字元在str1中的索引值(位置)
str1.IndexOf("字串",3,2);//從str1第4個字元起,尋找2個字元,尋找“字串”的第一個字元在str1中的索引值(位置)

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

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

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

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

1.12 取當前年月日,格式為:2003-9-23
string strYMD=currentTime.ToString("d");

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.