`

C#开发常用的工具类

    博客分类:
  • C#
阅读更多
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;
using System.Data;
using System.Data.OleDb;
using System.Text.RegularExpressions;
using System.Configuration;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Security.Cryptography;
using System.Globalization;
public class Unitl 
{
#region 验证是否是数字
        /// <summary>
        /// 验证是否是数字
        /// </summary>
        /// <param name="str"></param>
        /// <returns></returns>
        public static bool IsNumeric(string str)
        {
            if (str == null || str.Length == 0)
                return false;
            System.Text.ASCIIEncoding ascii = new System.Text.ASCIIEncoding();
            byte[] bytestr = ascii.GetBytes(str);
            foreach (byte c in bytestr)
            {
                if (c < 48 || c > 57)
                {
                    return false;
                }
            }
            return true;
        }
        #endregion

        #region 生成随机数.
        static int iseed = 0;
        /// <summary> 
        /// 生成数字和字母随机数.
        /// </summary> 
        /// <param name="n">生成长度</param> 
        /// <returns></returns> 
        public static string RandCode(int nLeng)
        {
            char[] arrChar = new char[]{ 
            '0','1','2','3','4','5','6','7','8','9', 
            'a','b','c','d','e','f','g','h','i','j','k','m','n','p','q','r','s','t','u','v','w','x','y','z' ,
            'A','B','C','D','E','F','G','H','J','K','L','M','N','P','Q','R','S','T','U','V','W','X','Y','Z'
        };
            StringBuilder num = new StringBuilder();
            iseed++;
            iseed = iseed % 10000;
            Random rnd = new Random(iseed);
            for (int i = 0; i < nLeng; i++)
            {
                num.Append(arrChar[rnd.Next(0, arrChar.Length)].ToString());
            }
            return num.ToString();
        }

        /// <summary> 
        /// 生成数字和字母随机数 .
        /// </summary> 
        /// <param name="n">生成长度</param> 
        /// <returns></returns> 
        public static string RandCode(string RCstr, int nLeng)
        {
            StringBuilder num = new StringBuilder();
            Random rnd = new Random(DateTime.Now.Millisecond);
            for (int i = 0; i < nLeng; i++)
            {
                num.Append(RCstr[rnd.Next(0, RCstr.Length)].ToString());
            }
            return num.ToString();
        }

        /// <summary>
        /// 生成按当前日期串组成的字符串.
        /// </summary>
        /// <param name="fileExtName"></param>
        /// <returns></returns>
        public static string RandFileName(string fileExtName)
        {
            return string.Format("{0}{1}{2}", DateTime.Now.ToString("yyyyMMddhhmmss"), RandCode(8), fileExtName);
        }

        #endregion

        #region md5加密
        /// <summary>
        /// 对字符串进行MD5加密.
        /// </summary>
        /// <param name="str"></param>
        /// <returns></returns>
        public static string Md5(string str)
        {
            return Md5(str, "utf-8");
        }
        /// <summary>
        /// MD5加密.
        /// </summary>
        /// <param name="str"></param>
        /// <param name="charset"></param>
        /// <returns></returns>
        public static string Md5(string str, string charset)
        {
            MD5 md5 = new MD5CryptoServiceProvider();
            byte[] t = md5.ComputeHash(Encoding.GetEncoding(charset).GetBytes(str));
            StringBuilder sb = new StringBuilder(32);
            for (int i = 0; i < t.Length; i++)
            {
                sb.Append(t[i].ToString("x").PadLeft(2, '0'));
            }
            return sb.ToString();
        }
        #endregion

        #region [排序算法]

        /// <summary>
        /// 冒泡排序法.
        /// </summary>
        /// <param name="r"></param>
        /// <returns></returns>
        public static string[] BubbleSort(string[] r)
        {
            int i, j; //交换标志 
            string temp;

            bool exchange;

            for (i = 0; i < r.Length; i++)
            {
                exchange = false;
                for (j = r.Length - 2; j >= i; j--)
                {
                    if (System.String.CompareOrdinal(r[j + 1], r[j]) < 0) //交换条件
                    {
                        temp = r[j + 1];
                        r[j + 1] = r[j];
                        r[j] = temp;
                        exchange = true;
                    }
                }
                if (!exchange)
                {
                    break;
                }
            }
            return r;
        }
        #endregion
}
分享到:
评论

相关推荐

    C#常用工具类代码集合Util第二版本(自己工作总结)

    C#常用工具类代码集合Util第二版本(自己工作总结),包括常用工具类,扩展方法工具类,百度地图C#工具类,Echart工具类,Office工具类,Autofac工具类,Web开发常用工具类,Winform开发常用工具类,是自己工作十年...

    个人用的C#日常开发工具类

    C#工具类

    常用的C#工具类

    整理了一些C#开发常用工具类,方便开发者在日常开发中使用。

    C#常用基础工具类源码

    整理了几个在DotNet2.0中C#开发常用的基础工具类,内容如下:StringUtil、ParseUtil、TypeUtil、ByteUtil、NumUtil、XmlUtil、RegexUtil、HashUtil、ColorUtil。

    C#开发工具类整理

    多年工作整理C#开发工具类,能支持日常工作需要,例子参考。包括文件处理、数据处理、图片处理、加密解密方法、验证码等等代码。都弄懂,工作轻松!

    C# webservice 服务调用工具类,源码

    C# webservice 服务调用工具类。 此工具 对 post get 请求进行了封装,只需要传递对应的URL以及参数即可返回JSON 或者XML 的字符串。 是非常有用的调用远程接口的服务类。 webservice

    C#.net常用工具类

    .net|NPOI|Excel 导入|Excel导出

    c# Web常用工具类、asp.net常用类

    不一一介绍、里面有很多方法可供调用、几乎WEB开发常用的方法都有了、不下你都后悔

    C#基类/工具类

    C#基类,里面包含各种辅助工具类,减少代码开发

    C#工具箱自己开发

    自己开发的C#工具箱,包含各种常用仪表控件,曲线图控件,水塔,开关,按钮控件。尽情相互交流留下宝贵意见

    C#公共工具类源码.rar

    C#公共工具类源码,在编程中都能用的到,涵盖开发中的各个方面,代码很齐全,你可以直接在你的项目引用它

    C# JSON实体类生成工具

    该工具支持通过在软件界面输入或者粘贴JSON字符串,根据字符串生成C#编程开发使用的JSON实体类文件。

    自己写的一个C#工具类,功能很简单,但是很实用

    自己写的一个C#工具类,功能很简单,但是很实用,觉得有用就下吧。 主要的方法有:更简单的截取字符串方法, 格式化布尔值返回checkbox或指定的字符串, 格式化日期并以固定格式返回, 传递recordCount和pageSize...

    100个C#辅助类工具类

    100个C#辅助类工具类,涵盖日常所需的开发需求,快来下载吧

    c#常用的功能类大全

    开发过程中常用类汇总,包括excel操作、上传下载、xml操作、缓存、序列化、条形码、日志等等

    C#自己制作快速开发小工具

    自制快速开发工具。生成页面、控制类、实体、此工具是本人为海关开发某个项目所用、内附源码,如果你的页面不一样可以修改源码、简单易用、适合开发者使用,大大提高开发效率

    C#之Common工具类

    多种多样的工具类可以让web开发事半功倍,节省了开发时间,提高了开发的效率。。。

    C#开发实例大全(基础卷).软件开发技术联盟(带详细书签) PDF 下载

    主要内容有C#开发环境的使用、C#语言基础应用、字符串处理技术、数组和集合的使用、面向对象编程技术、数据结构与算法、Windows窗体基础、特色窗体界面、窗体控制技术、MDI窗体和继承窗体、Windows常用控件的使用、...

    C#实体类生成工具

    由C#开发的简单实体类生成工具,目前只支持SQLServer和Oracle数据库。

Global site tag (gtag.js) - Google Analytics