C# .NET常用小方法和函数集

    技术2022-05-11  73

    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 取中文年月日 string strYMD=currentTime.ToString("D");

    1.13 取当前时分,格式为:14:24 string strT=currentTime.ToString("t");

    1.14 取当前时间,格式为:2003-09-23T14:46:48 string strT=currentTime.ToString("s");

    1.15 取当前时间,格式为:2003-09-23 14:48:30Z string strT=currentTime.ToString("u");

    1.16 取当前时间,格式为:2003-09-23 14:48 string strT=currentTime.ToString("g");

    1.17 取当前时间,格式为:Tue, 23 Sep 2003 14:52:40 GMT string strT=currentTime.ToString("r");

    1.18获得当前时间 n 天后的日期时间 DateTime newDay = DateTime.Now.AddDays(100);

    2、Int32.Parse(变量) Int32.Parse("常量") 字符型转换 转为32位数字型

    3、 变量.ToString() 字符型转换 转为字符串 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进制) 12345.ToString("p"); //生成 1,234,500.00%

    4、变量.Length 数字型 取字串长度: 如: string str="中国"; int Len = str.Length ; //Len是自定义变量, str是求测的字串的变量名

    5、System.Text.Encoding.Default.GetBytes(变量) 字码转换 转为比特码 如: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(参数1,参数2); 截取字串的一部分,参数1为左起始位数,参数2为截取几位。 如:string s1 = str.Substring(0,2);

    8、String user_IP=Request.ServerVariables["REMOTE_ADDR"].ToString(); 取远程用户IP地址

    9、穿过代理服务器取远程用户真实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>点击</a> 在Edit.aspx页中取值:String str=Request.QueryString["fdid"];

    12、DOC对象.CreateElement("新建节点名"); 创建XML文档新节点

    13、父节点.AppendChild(子节点); 将新建的子节点加到XML文档父节点下

    14、 父节点.RemoveChild(节点); 删除节点

    15、Response Response.Write("字串"); Response.Write(变量); 向页面输出。

    Response.Redirect("URL地址"); 跳转到URL指定的页面

    16、char.IsWhiteSpce(字串变量,位数)——逻辑型 查指定位置是否空字符; 如: string str="中国 人民"; Response.Write(char.IsWhiteSpace(str,2)); //结果为:True, 第一个字符是0位,2是第三个字符。

    17、char.IsPunctuation('字符') --逻辑型 查字符是否是标点符号 如:Response.Write(char.IsPunctuation('A')); //返回:False

    18、(int)'字符' 把字符转为数字,查代码点,注意是单引号。 如: Response.Write((int)'中'); //结果为中字的代码:20013

    19、(char)代码 把数字转为字符,查代码代表的字符。 如: Response.Write((char)22269); //返回“国”字。

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

    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代码。

    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结尾,返回布尔值.如: 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() 从指定位置开始删除指定数的字符 <% string str1="我是萨达姆的崇拜者之一"; Response.Write(str1.Remove(5,4)); //结果为“我是萨达姆之一” %>

    把字符串转化为字节流   byte[] bwrite=Encoding.GetEncoding("GB2312").GetBytes("中国1234".ToCharArray());   MessageBox.Show(bwrite.Length.ToString());   for(int i=0;i<bwrite.Length;i++)MessageBox.Show(bwrite[i].ToString()); 把字符串写入文件   FileStream fs1=new FileStream(".//test.dll",FileMode.OpenOrCreate);   byte[] ch=Encoding.Default.GetBytes(" 我爱北京天安门!/r/n".ToCharArray());   fs1.Write(ch,0,ch.Length); fs1.Close();      

    把字节流转化为字符串       string str;             byte[] bStr=new byte[3]{48+7,48+8,48+9};             str=Encoding.Default.GetString(bStr);       MessageBox.Show(str);

    字符串转化为其base64编码       string s="cuidexuan";       byte[] by=Encoding.Default.GetBytes(s.ToCharArray());       s=Convert.ToBase64String(by);                   MessageBox.Show(s);      

    有关文件名的处理       string s=Path.GetTempPath();

    线程 ms-help://MS.VSCC/MS.MSDNVS.2052/cpguide/html/cpconthreading.htm and ms-help://MS.VSCC/MS.MSDNVS.2052/cpsamples/html/threading.htm

    选择一个目录 public class FolderBrowser : System.Windows.Forms.Design.FolderNameEditor {

     public string ShowDialog()  {   FolderBrowser fb = new FolderBrowser();   fb.Description = "请选择一个目录:";   //fb.Style=FolderNameEditor.FolderBrowserStyles.RestrictToFilesystem;   fb.ShowDialog();       string dirPath=fb.DirectoryPath;       fb.Dispose();         return dirPath;  } }

    复制目录 private int dirCopy(string dirFrom,string dirTo)     {       if(!Directory.Exists(dirFrom)) throw(new Exception(dirFrom+" not exists"));       if(Directory.Exists(dirTo)) throw(new Exception(dirTo+" exists"));       Directory.CreateDirectory(dirTo);       try       {         foreach(string f in Directory.GetFiles(dirFrom))         {            File.Copy(f,dirTo+"//"+Path.GetFileName(f));         }         foreach(string d in Directory.GetDirectories(dirFrom))         {           dirCopy(d,dirTo+"//"+Path.GetFileName(d));         }         return 0;       }       catch(Exception){ return -1;}           }    


    最新回复(0)