精华内容
下载资源
问答
  • logutils工具类Android开发log日志打印封装完毕。最好用的log打印日志的工具类之一。
  • 基于Java的(SM2_SM3_SM4)国密算法java源代码及工具类及测试demo, 包含SM2,3,4的工具类及全套的测试demo
  • java后台微信支付工具类

    热门讨论 2016-05-11 14:53:16
    该资源为微信app支付java服务器代码所依赖的工具包,微信appV3代码请查看博客: http://blog.csdn.net/xu_xiao_ji/article/details/51374174
  • FastJson封装工具类(直接使用)

    热门讨论 2015-09-07 15:47:40
    这是一个封装好的FastJson工具类、里面已经处理各种情况~分享给大家
  • Xml和Json互转工具类

    热门讨论 2015-04-17 15:31:29
    本实例主要是通过json-libjar包中的工具类进行操作,简单实现了xml字符串和json字符串之间的转化,xml文件和json文件的转化。而且还兼容jsonObject和jsonArray两种格式,自己摸索,记录一下以便学习。
  • Android快速开发系列 10个常用工具类 程序源码

    千次下载 热门讨论 2014-09-05 20:36:50
    代码为博客实例代码,有问题博客留言:http://blog.csdn.net/lmj623565791/article/details/38965311
  • JAVA中RSA加密解密工具类加强版

    热门讨论 2015-07-14 09:46:29
    博客地址 http://blog.csdn.net/sbsujjbcy/article/details/46873403
  • Java Utils工具类大全

    万次阅读 2019-01-21 23:06:10
    │ ClassUtil.java #Java Class与反射相关的一些工具类 │ ChinesUtil.java #中文相关的工具类 │ ConvertUtil.java #转换相关的工具类 │ DateUtil.java #日期时间相关的工具类 │ EmailUtil.java #Email相关...

    源码和jar见:https://github.com/evil0ps/utils

    #Java Utils

    封装了一些常用Java操作方法,便于重复开发利用.
    另外希望身为Java牛牛的你们一起测试和完善,欢迎入群263641914 一起封装和完成常用的Java代码。
    节约撸码时间以方便有更多的时间去把妹子~

    #开发环境
    Win7x64
    JDK1.7
    IDEA14

    #项目结构

    │  README.md
    │  utils.iml
    │
    ├─.idea
    │
    ├─conf
    │      configFTP.properties
    │      ftp.properties
    │
    ├─Junit#测试类
    │  │  Test.properties
    │  │
    │  └─evilp0s
    │      │  CharsetTest.java
    │      │  DateUtilTest.java
    │      │  DateUtilThreadSafeTest.java
    │      │  EmailUtilTest.java
    │      │  FilePathUtilTest.java
    │      │  FileUtilTest.java
    │      │  PrintUtilTest.java
    │      │  ProUtilTest.java
    │      │  RandomUtilTest.java
    │      │  RegUtilTest.java
    │      │  SecUtilTest.java
    │      │  StringUtilTest.java
    │      │  SupportTest.java
    │      │  SysUtilTest.java
    │      │  ZIPUtilTest.java
    │      │
    │      └─algorithmImpl
    │              FileEncodingUtilTest.java
    │              FileImplTest.java
    │              FileTypeImplTest.java
    │
    ├─lib#需要的Jar
    │
    ├─out#相应的Jar
    │  ├─artifacts
    │  │  └─evilp0s_util
    │  │          evilp0s-util.jar
    │
    └─src
        └─evilp0s
            │  CharsetUtil.java     #字符串相关的工具类
            │  ClassUtil.java       #Java Class与反射相关的一些工具类
            │  ChinesUtil.java      #中文相关的工具类
            │  ConvertUtil.java     #转换相关的工具类
            │  DateUtil.java        #日期时间相关的工具类
            │  EmailUtil.java       #Email相关的工具类
            │  FilePathUtil.java    #文件路径相关的工具类
            │  FileUtil.java        #文件相关的工具类
            │  PrintUtil.java       #打印相关的工具类
            │  ProUtil.java         #属性文件相关的工具类
            │  RandomUtil.java      #随机操作的相关的工具类
            │  RegUtil.java         #正则相关的工具类
            │  SecUtil.java         #安全相关的工具类
            │  StreamUtil.java      #Stream相关的工具类
            │  StringUtil.java      #字符串相关的工具类
            │  SysUtil.java         #系统相关的工具类
            │  ValidUtil.java       #字符串相关的工具类
            │  WebUtil.java         #Web相关的工具类
            │  ZIPUtil.java         #zip相关的工具类
            │
            ├─algorithmImpl#一些算法的实现细节
            │      cpDetector.java
            │      FileEncodingUtil.java
            │      FileImpl.java
            │      FileReadImpl.java
            │      FileTypeImpl.java
            │      StringImpl.java
            │
            └─FTP#FTP相关操作的封装
                    FileAttr.java
                    FTPConstant.java
                    FTPFactory.java
                    FTPLog.java
                    FTPtest.java
                    FTPUtil.java
                    FTPUtilImpl.java
                    FTPVo.java
                    FunctionSet.java
    

    #APIDOC
    #CharsetUtil字符串相关的工具类

    ##常量字段

    static java.lang.String GBK 中文超大字符集
    static java.lang.String ISO_8859_1 ISO 拉丁字母表 No.1,也叫作 ISO-LATIN-1
    static java.lang.String US_ASCII 7位ASCII字符,也叫作ISO646-US、Unicode字符集的基本拉丁块
    static java.lang.String UTF_16 16 位 UCS 转换格式,字节顺序由可选的字节顺序标记来标识
    static java.lang.String UTF_16BE 16 位 UCS 转换格式,Big Endian(最低地址存放高位字节)字节顺序
    static java.lang.String UTF_16LE 16 位 UCS 转换格式,Little-endian(最高地址存放低位字节)字节顺序
    static java.lang.String UTF_8 8 位 UCS 转换格式

    ##常量方法
    static java.lang.String changeCharset(java.lang.String str, java.lang.String newCharset)
    字符串编码转换的实现方法
    static java.lang.String changeCharset(java.lang.String str, java.lang.String oldCharset, java.lang.String newCharset)
    字符串编码转换的实现方法
    static java.lang.String toASCII(java.lang.String str)
    将字符编码转换成US-ASCII码
    static java.lang.String toGBK(java.lang.String str)
    将字符编码转换成GBK码
    static java.lang.String toISO_8859_1(java.lang.String str)
    将字符编码转换成ISO-8859-1码
    static java.lang.String toUTF_16(java.lang.String str)
    将字符编码转换成UTF-16码
    static java.lang.String toUTF_16BE(java.lang.String str)
    将字符编码转换成UTF-16BE码
    static java.lang.String toUTF_16LE(java.lang.String str)
    将字符编码转换成UTF-16LE码
    static java.lang.String toUTF_8(java.lang.String str)
    将字符编码转换成UTF-8码

    #ClassUtil-Class与反射相关的一些工具类

    ##常量方法
    static java.util.List<java.lang.String> getClassName(java.lang.String packageName, boolean childPackage)
    static java.lang.String[] getField(java.lang.String className)
    获取指定类的全部属性字段
    static java.lang.String[] getMethod(java.lang.String className)
    获取对象的全部方法
    static void getter(java.lang.Object obj, java.lang.String att)
    调用对象的getter方法
    static java.lang.String initStr(java.lang.String old)
    java.lang.Class loadClass(java.lang.String className)
    加载指定的类
    static T propertiesCopy(java.lang.Object obj, java.lang.Class type)
    同名属性值复制 将对象obj内属性名同类型T内容有同名属性的值复制到类型T中,并返回一个类型T的对象
    static T propertiesCopyIgnore(java.lang.Object obj, java.lang.Class type)
    同名属性值复制(忽略大小写) 将对象obj内属性名同类型T内容有同名属性的值复制到类型T中,并返回一个类型T的对象
    static T propertiesCopyIgnoreFilter(java.lang.Object obj, java.lang.Class type, java.lang.String IgnoreStr)
    同名属性值复制(比较时忽略字符IgnoreStr的内容) 将对象obj内属性名同类型T内容有同名属性的值复制到类型T中,并返回一个类型T的对象
    static void setter(java.lang.Object obj, java.lang.String att, java.lang.Object value, java.lang.Class<?> type)
    调用对象的setter方法
    #ChinesUtil中文相关的工具类

    ##常量方法
    static java.lang.String getFirstSpell(java.lang.String chinese)
    获取汉字串拼音首字母,英文字符不变
    static java.lang.String getFullSpell(java.lang.String chinese)
    获取汉字串拼音,英文字符不变
    static java.lang.String getPingYin(java.lang.String inputString)
    将字符串中的中文转化为拼音,其他字符不变
    static boolean isChinese(java.lang.String strName)
    static boolean isChineseByName(java.lang.String str)
    static boolean isChineseByREG(java.lang.String str)
    static void main(java.lang.String[] args)
    #ConvertUtil转换相关的工具类

    ##常量方法
    static int bytesToInt(byte[] bytes)
    static long byteToLong(byte[] b)
    static short byteToShort(byte[] b)
    static byte[] intToByte(int i)
    static byte[] longToByte(long number)
    static byte[] shortToByte(short number)
    #DateUtil日期时间相关的工具类
    ##常量方法
    static java.util.Date calculate(java.util.Date date, int second, java.lang.String timeBurst)
    时间Date在时间段(例如每天的08:00-18:00)上增加或减去second秒
    static java.util.Date calculate(java.lang.String date, int second, java.lang.String timeBurst)
    时间Date在时间段(例如每天的08:00-18:00)上增加或减去second秒
    static java.lang.String Date()
    获取当前的日期
    static java.lang.String Date(java.util.Date date)
    将指定的时间格式化成出返回
    static java.util.Date Date(java.lang.String dateStr)
    将指定的字符串解析为时间类型
    static java.lang.String DateTime()
    获取当前日期时间
    static java.lang.String DateTime(java.util.Date date)
    将指定的时间格式化成出返回
    static java.util.Date DateTime(java.lang.String datestr)
    将指定的字符串解析为时间类型
    static java.util.Date day(java.util.Date date, int day)
    在指定的时间上加或减去几天
    static java.util.Date day(int day)
    在当前时间的基础上加或减去几天
    static java.util.Date hour(java.util.Date date, float hour)
    在制定的时间上加或减去几小时-支持浮点数
    static java.util.Date hour(float hour)
    在当前时间的基础上加或减去几小时-支持浮点数
    static boolean isDate(java.lang.String date)
    判断字符串是否为日期字符串
    static java.util.Date Minute(java.util.Date date, int minute)
    在制定的时间上加或减去几分钟
    static java.util.Date Minute(int minute)
    在当前时间的基础上加或减去几分钟
    static java.util.Date month(java.util.Date date, int month)
    在指定的时间上加或减去几月
    static java.util.Date month(int month)
    在当前时间的基础上加或减去几月
    static int subDay(java.util.Date startTime, java.util.Date endTime)
    获取俩个时间之前的相隔的天数
    static int subDay(java.lang.String startTime, java.lang.String endTime)
    获取俩个时间之前的相隔的天数
    static long subtimeBurst(java.util.Date startDate, java.util.Date endDate, java.lang.String timeBurst)
    返回俩个时间在时间段(例如每天的08:00-18:00)的时长-单位秒
    static long subtimeBurst(java.lang.String startDate, java.lang.String endDate, java.lang.String timeBurst)
    返回俩个时间在时间段(例如每天的08:00-18:00)的时长-单位秒
    static long Subtract(java.util.Date date1, java.util.Date date2)
    时间date1和date2的时间差-单位秒
    static long Subtract(java.lang.String date1, java.lang.String date2)
    时间date1和date2的时间差-单位秒
    static java.lang.String SubtractDate(java.lang.String date1, java.lang.String date2)
    获取俩个时间的查结果用时秒表示
    static int SubtractDay(java.util.Date date1, java.util.Date date2)
    时间date1和date2的时间差-单位天
    static int SubtractDay(java.lang.String date1, java.lang.String date2)
    时间date1和date2的时间差-单位天
    static int SubtractHour(java.util.Date date1, java.util.Date date2)
    时间date1和date2的时间差-单位小时
    static int SubtractHour(java.lang.String date1, java.lang.String date2)
    时间date1和date2的时间差-单位小时
    static int SubtractMinute(java.util.Date date1, java.util.Date date2)
    时间date1和date2的时间差-单位分钟
    static int SubtractMinute(java.lang.String date1, java.lang.String date2)
    时间date1和date2的时间差 -单位分钟
    static int SubtractMonth(java.util.Date date1, java.util.Date date2)
    时间date1和date2的时间差-单位月
    static int SubtractMonth(java.lang.String date1, java.lang.String date2)
    时间date1和date2的时间差-单位月
    static java.lang.String SubtractTime(java.lang.String date1, java.lang.String date2)
    获取俩个时间的查结果用时秒表示
    static int SubtractYear(java.util.Date date1, java.util.Date date2)
    时间date1和date2的时间差-单位年
    static int SubtractYear(java.lang.String date1, java.lang.String date2)
    时间date1和date2的时间差-单位年
    static java.lang.String Time()
    获取当前的时间
    static java.lang.String Time(java.util.Date date)
    讲指定的时间格式化成出返回
    static java.util.Date Time(java.lang.String dateStr)
    将指定的字符串解析为时间类型
    static java.util.Date year(java.util.Date date, int year)
    在指定的时间上加或减去几年
    static java.util.Date year(int year)
    在当前时间的基础上加或减去year年

    #EmailUtilEmail相关的工具类

    ##常量方法
    void doSendHtmlEmail(java.lang.String subject, java.lang.String sendHtml, java.lang.String receiveUser)
    发送邮件
    void doSendHtmlEmail(java.lang.String subject, java.lang.String sendHtml, java.lang.String receiveUser, java.io.File attachment)
    发送邮件

    #FilePathUtil文件路径相关的工具类

    ##常量方法
    static java.lang.String commandPath(java.lang.String file)
    返回一个通用的文件路径
    static java.lang.String getParentPath(java.lang.String file)
    返回相一个目录的对于本身的相对父目录

    #FileUtil文件相关的工具类
    ##常量方法
    static boolean appendLine(java.io.File file, java.lang.String str)
    在文件末尾追加一行
    static boolean cleanFile(java.io.File file)
    快速清空一个超大的文件
    static boolean copy(java.io.File file, java.lang.String targetFile)
    复制文件 通过该方式复制文件文件越大速度越是明显
    static boolean copy(java.lang.String resourcePath, java.lang.String targetPath)
    复制文件
    static void copyDir(java.io.File filePath, java.lang.String targetPath)
    复制目录
    static void copyDir(java.lang.String filePath, java.lang.String targetPath)
    复制目录
    static int countLines(java.io.File file)
    获取文件的行数
    static java.lang.String cpdetector(java.io.File file)
    获取文件的编码(cpDetector)探测
    static boolean createFiles(java.lang.String filePaht)
    创建文件支持多级目录
    static void createPaths(java.lang.String paths)
    创建多级目录
    static boolean deleteBigFile(java.io.File file)
    快速的删除超大的文件
    static boolean deleteDir(java.io.File file)
    删除一个目录
    static boolean deleteFile(java.io.File file)
    删除一个文件
    static java.lang.String FileType(java.io.File file)
    获取文件的类型
    static java.lang.String hash(java.io.File file)
    获取文件的Hash
    static java.util.List<java.lang.String> Lines(java.io.File file)
    以列表的方式获取文件的所有行
    static java.util.List<java.lang.String> Lines(java.io.File file, int lines)
    以列表的方式获取文件的指定的行数数据
    static java.util.List<java.io.File> listFile(java.io.File path)
    罗列指定路径下的全部文件
    static java.util.List<java.io.File> listFile(java.lang.String path)
    罗列指定路径下的全部文件
    static java.util.List<java.io.File> listFileAll(java.io.File path)
    罗列指定路径下的全部文件包括文件夹
    static java.util.List<java.io.File> listFileFilter(java.io.File dirPath, java.lang.String postfixs)
    获取指定目录下的特点文件,通过后缀名过滤
    static java.lang.String MimeType(java.lang.String file)
    获取文件的Mime类型
    static java.util.Date modifyTime(java.io.File file)
    获取文件最后的修改时间
    static java.util.List<java.io.File> searchFile(java.io.File dirPath, java.lang.String fileName)
    在指定的目录下搜寻文个文件
    static java.util.List<java.io.File> searchFileReg(java.io.File dirPath, java.lang.String reg)
    查找符合正则表达式reg的的文件
    static java.lang.String SimpleEncoding(java.lang.String file)
    利用简单的文件头字节特征探测文件编码

    #PrintUtil打印相关的工具类
    ##常量方法
    static void print(java.util.Enumeration enums)
    遍历打印Enumeration
    static void print(java.util.List<?> list)
    遍历打印遍历List集合
    static void print(java.util.Map map)
    遍历打印Map集合
    static void print(java.lang.String str)
    static void println(java.lang.Object obj)
    static void println(java.lang.String str)

    #ProUtil属性文件相关的工具类
    ##常量方法
    static java.lang.String GetAllProperties(java.lang.String filePath)
    读取Properties的全部信息
    static java.lang.String GetValueByKey(java.lang.String filePath, java.lang.String key)
    根据Key读取Value
    static java.lang.String key(java.lang.String key)
    static void WriteProperties(java.lang.String filePath, java.lang.String pKey, java.lang.String pValue)
    写入Properties信息

    #RandomUtil随机操作的相关的工具类
    ##常量方法

    static int getNotSimple(int[] param, int len)
    每次生成的len位数都不相同
    static java.lang.String LowerString(int length)
    返回一个定长的随机纯大写字母字符串(只包含大小写字母)
    static java.lang.String MixString(int length)
    返回一个定长的随机纯字母字符串(只包含大小写字母)
    static java.lang.String number(int length)
    static java.lang.String String(int length)
    返回一个定长的随机字符串(只包含大小写字母、数字)
    static java.lang.String toFixdLengthString(int num, int fixdlenth)
    根据数字生成一个定长的字符串,长度不够前面补0
    static java.lang.String toFixdLengthString(long num, int fixdlenth)
    根据数字生成一个定长的字符串,长度不够前面补0
    static java.lang.String UpperString(int length)
    返回一个定长的随机纯小写字母字符串(只包含大小写字母)
    static java.lang.String ZeroString(int length)
    生成一个定长的纯0字符串

    #RegUtil正则相关的工具类
    ##常量方法

    static boolean isMatche(java.lang.String str, java.lang.String reg)
    判断字符串str是否符合正则表达式reg

    #SecUtil安全相关的工具类
    ##常量方法

    static java.lang.String FileMD5(java.io.File file)
    static java.lang.String md5(java.lang.String password)

    #StreamUtil-Stream相关的工具类
    ##常量方法

    static java.io.InputStream byte2InputStream(byte[] b)
    static byte[] inputStream2Byte(java.io.InputStream inStream)
    static byte[] stream2Byte(java.io.InputStream is)
    void streamSaveAsFile(java.io.InputStream is, java.io.File outfile)
    将流另存为文件
    static java.lang.String streamToString(java.io.InputStream in)
    Read an input stream into a string

    #StringUtil字符串相关的工具类
    ##常量方法

    static int ChineseLength(java.lang.String str)
    获取一个字符串中中文字符的个数
    static int countSubStr(java.lang.String string, java.lang.String str)
    获取字符串str在String中出现的次数
    static int countSubStrReg(java.lang.String string, java.lang.String reg)
    获取符合reg正则表达式的字符串在String中出现的此时
    java.lang.String cpDetector(java.lang.String str)
    获取字符串的编码
    static java.lang.String formatFloat(float f, java.lang.String format)
    格式化一个float
    static java.lang.String full2Half(java.lang.String str)
    全角字符变半角字符
    static java.lang.String GBToUnicode(java.lang.String input)
    GBK转换成Unicode字符集
    static java.lang.String getHideEmailPrefix(java.lang.String email)
    隐藏邮件地址前缀。
    static java.lang.String getLimitLengthString(java.lang.String str, int len, java.lang.String symbol)
    截取字符串 超出的字符用symbol代替
    static int getStringLen(java.lang.String SrcStr)
    取得字符串的实际长度(考虑了汉字的情况)
    static java.lang.String html(java.lang.String content)
    HTML标签转义方法 —— java代码库
    static boolean isABC(java.lang.String src)
    判断是否纯字母组合
    static boolean isChinese(char c)
    判断是否是中文
    static boolean isChinese(java.lang.String strName)
    完整的判断中文汉字和符号
    static boolean isEmail(java.lang.String email)
    static boolean isEmpty(java.lang.String s)
    判断是否是空字符串 null和"" 都返回 true
    static boolean isFloatNumeric(java.lang.String src)
    判断是否浮点数字表示
    static boolean isIn(java.lang.String substring, java.lang.String[] source)
    判断字符串数组中是否包含某字符串元素
    static boolean isInteger(java.lang.String str)
    static boolean isMessyCode(java.lang.String strName)
    判断是否是乱码
    static boolean isNumeric(java.lang.String src)
    判断是否数字表示
    static boolean isNumericString(java.lang.String src)
    判断是否数字表示
    static java.lang.String joinString(java.util.List array, java.lang.String symbol)
    把string array or list用给定的符号symbol连接成一个字符串
    static java.lang.String joinString(java.lang.String[] array, java.lang.String symbol)
    把string array or list用给定的符号symbol连接成一个字符串
    static java.lang.String left(java.lang.String input, int count)
    截取字符串左侧指定长度的字符串
    static java.lang.String listToStringSlipStr(java.util.List list, java.lang.String slipStr)
    将list 用传入的分隔符组装为String
    static java.lang.String middle(java.lang.String input, int index, int count)
    从指定位置开始截取指定长度的字符串
    static java.util.Map<java.lang.String,java.lang.String> parseQuery(java.lang.String query, char split1, char split2, java.lang.String dupLink)
    解析字符串返回map键值对(例:a=1&b=2 => a=1,b=2)
    static java.util.List<java.lang.String> parseString2ListByCustomerPattern(java.lang.String pattern, java.lang.String src)
    根据指定的字符把源字符串分割成一个数组
    static java.lang.String repeat(java.lang.String src, int num)
    repeat - 通过源字符串重复生成N次组成新的字符串。
    static java.lang.String replaceAll(java.lang.String s, java.lang.String sf, java.lang.String sb)
    存文本替换
    static java.lang.String replaceBlank(java.lang.String str)
    页面中去除字符串中的空格、回车、换行符、制表符
    static java.lang.String replaceBracketStr(java.lang.String str)
    全角括号转为半角
    static boolean requals(java.lang.String str1, java.lang.String str2)
    static java.lang.String right(java.lang.String input, int count)
    截取字符串右侧指定长度的字符串
    static double SimilarDegree(java.lang.String str1, java.lang.String str2)
    字符串相似度比较(速度较快)
    static double SimilarityRatio(java.lang.String str1, java.lang.String str2)
    字符串相似度比较(速度较快)
    java.lang.String SimpleEncoding(java.lang.String str)
    获取字符串的编码
    static java.lang.String string2Unicode(java.lang.String string)
    static java.lang.String subStringNotEncode(java.lang.String subject, int size)
    讲字符串截取到指定长度size+…的形式
    static java.lang.String subStrNotEncode(java.lang.String subject, int size)
    截取字符,不转码
    static java.lang.String trimPunct(java.lang.String str)
    删除所有的标点符号
    static java.lang.String unicode2String(java.lang.String unicode)
    static java.lang.String UnicodeToGB(java.lang.String input)
    Unicode转换成GBK字符集
    #SysUtil系统相关的工具类
    ##常量字段

    static java.lang.String STR_HOSTNAME
    static java.lang.String STR_IP
    #ValidUtil字符串相关的工具类
    ##常量方法

    static boolean isValid(java.util.Collection col)
    判断集合的有效性
    static boolean isValid(java.lang.Object obj)
    判断一个对象是否为空
    static boolean isValid(java.lang.Object[] arr)
    判断数组是否有效
    static boolean isValid(java.lang.String src)
    判断字符串有效性
    #WebUtilWeb相关的工具类
    ##常量方法
    static java.lang.String escape(java.lang.String src)
    static java.lang.String getParamValue(java.lang.String url, java.lang.String paramName)
    static void main(java.lang.String[] args)
    static void print(javax.servlet.http.HttpServletRequest request)
    static java.lang.String removeParam(java.lang.String url, java.lang.String… paramNames)
    static java.lang.String removeParam(java.lang.String url, java.lang.String paramName)
    static java.lang.String setParam(java.lang.String url, java.lang.String paramName, java.lang.String paramValue)
    static java.lang.String unescape(java.lang.String src)
    static java.lang.String urlJoin(java.net.URL url, java.lang.String locationHeader)
    #ZIPUtil-zip相关的工具类
    ##常量方法
    static void deCompress(java.io.File file, java.lang.String dest)
    文档压缩
    static void unCompress(java.io.File source, java.lang.String path)
    文档解压
    static void zipFile(java.io.File inFile, java.util.zip.ZipOutputStream zos, java.lang.String dir)

    文章转载自:https://blog.csdn.net/rj597306518/article/details/71480467/

    展开全文
  • 实现一个配置简单功能强大的excel工具类搞定大多数导入导出. http://blog.csdn.net/lk_blog/article/details/8007777 http://blog.csdn.net/lk_blog/article/details/8007837 对于J2EE项目导入导出Excel是最普通和...
  • java、android、web三端通用的RSA和AES工具类、js,包含使用说明,之前设置所需0积分的,但是CSDN显示50积分,现改为1积分
  • 判断集合是否为空: 方法: CollectionUtils.isEmpty(集合); 判断集合是否不为空 方法: CollectionUtils.isNotEmpty(集合);

    判断集合是否为空:

    方法:

    CollectionUtils.isEmpty(集合);
    

    判断集合是否不为空

    方法:

    CollectionUtils.isNotEmpty(集合);
    
    展开全文
  • Android开发常用工具类

    热门讨论 2015-08-27 15:49:19
    大家都知道,代码写多了,最值钱除了开发经验,还有积累的一票工具类
  • JAVA常用工具类汇总

    万次阅读 多人点赞 2019-08-06 16:05:46
    一、字符串工具类 org.apache.commons.lang.StringUtils pom文件: <!-- https://mvnrepository.com/artifact/org.apache.commons/org.apache.commons.lang --> <dependency> <groupId>org.apache...

    一、字符串工具类 org.apache.commons.lang.StringUtils

    pom文件:

    <!-- https://mvnrepository.com/artifact/org.apache.commons/org.apache.commons.lang -->
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>org.apache.commons.lang</artifactId>
        <version>2.4.0</version>
    </dependency>
    
    

    常用方法介绍:

    isEmpty(String str) 是否为空,空格字符为false
    
    isNotEmpty(String str) 是否为非空,空格字符为true
    
    isBlank(String str) 是否为空,空格字符为true
    
    isNotBlank(String str) 是否为非空,空格字符为false​​​​​​​
    
    equals(String str1,String str2) 比较两个字符串是否相等,如果两个均为空则认为相等
    
    contains(String str,char searchChar) str中是否包含字符searchChar,str为null 或者 searchChar为null,返回false
    
    trim(String str)去除字符串两端的控制符,空字符串、null 返回 null
    
    remove(String str,char remove) 去掉字符串str中所有包含remove的部分,然后返回
    
    join(Object[] array)把数组中的元素连接成一个字符串返回
    
    join(Object[] array,char split) 把数组中的元素拼接成一个字符串返回,把分隔符 split 也带上
    
    removeStart(String str,String remove) 如果字符串str是以remove开始,则去掉这个开始,然后返回,否则返回原来的串
    
    removeEnd(String str,String remove) 如果字符串str是以字符串remove结尾,则去掉这个结尾,然后返回,否则返回原来的串。
    
    stripStart (String str,String stripChars) 去除str 前端在stripChars中的字符
    
    stripEnd (String str,String stripChars) 去除str 后端在stripChars中的字符
    
    subString(String str,int start) 从start 开始,包含start 那个字符,得到字符串str 的子串,如果start为负数,则从后面开始数起。如果str 为null 或者 "" 则返回其本身
    
    subString(String str,int start,int end) 从start 开始到end结束,包含start 那个字符,得到字符串str 的子串,如果start为负数,则从后面开始数起。如果str 为null 或者 "" 则返回其本身
    
    subStringBefore(String str,String separator) 得到字符串separator第一次出现前的子串。不包含那个字符,如果str 为null 或者 "" 则返回其本身。
    
    subStringAfter(String str,String separator) 得到字符串separator第一次出现后的子串,不包含那个字符,如果 str 为null,或者"",则返回其本身
    
    

    二、org.springframework.beans.BeanUtils

    pom文件

    <!-- https://mvnrepository.com/artifact/org.springframework/spring-beans -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-beans</artifactId>
        <version>5.1.5.RELEASE</version>
    </dependency>
    

    常用方法:

    1、copyPeoperties  复制属性值,从一个对象到另一个对象
    
    2、getProperty 获取对象属性值
    
    3、setProperty 设置对象属性值
    
    4、populate  根据Map给属性复制
    
    5、copyPeoperty  复制单个值,从一个对象到另一个对象。
    
    6、cloneBean 克隆
    

    三、org.apache.commons.io.IOUtils

    1、closeQuietly  关闭一个IO流、socket、或者selector且不抛出异常。通常放在finally块。
    
    2、toString 转换IO流、Uri、byte[]为String。
    
    3、copy IO流数据复制,从输入流写到输出流中,最大支持2GB。
    
    4、toByteArray 从输入流、URI获取byte[]。
    
    5、write 把字节、字符等写入输出流。
    
    6、toInputStream 把字符转换为输入流。
    
    7、readLines 从输入流中读取多行数据,返回List<String>
    
    8、copyLarge 同copy,支持2GB以上数据的复制。
    
    9、lineIterator 从输入流返回一个迭代器,
    
    10、根据参数要求读取的数据量,全部读取,如果数据不够,则失败。
    

    四、org.apache.commons.io.FileUtils

    1、deleteDirectory  删除文件夹
    
    2、readFileToString  以字符形式读取文件内容。
    
    3、deleteQueitly  删除文件或文件夹且不会抛出异常。
    
    4、copyFile  复制文件
    
    5、writeStringToFile 把字符写到目标文件,如果文件不存在,则创建。
    
    6、forceMkdir 强制创建文件夹,如果该文件夹父级目录不存在,则创建父级。
    
    7、write  把字符写到指定文件中
    
    8、listFiles  列举某个目录下的文件(根据过滤器)
    
    9、copyDirectory  复制文件夹
    
    10、forceDelete  强制删除文件
    

    五、org.springframework.util.StringUtils

    1、hasText  检查字符串中是否包含文本
    
    2、hasLength  检测字符串是否长度大于0
    
    3、isEmpty 检测字符串是否为空(若传入为对象,则判断对象是否为null)
    
    4、commaDelimitedStringToArray  逗号分隔的String转换为数组
    
    5、collectionToDelimitedString  把集合转为CSV格式字符串
    
    6、replace 替换字符串
    
    7、delimitedListToStringArray  相当于split
    
    8、uncapitalize  首字母小写
    
    9、collectionToDelimitedCommaString   把集合转为CSV格式字符串
    
    10、tokenizeToStringArray 和split基本一样,但能自动去掉空白的单词
    

    六、org.apache.commons.lang.ArrayUtils

    1、contains  是否包含某字符串
    
    2、addAll  添加所有
    
    3、clone 克隆一个数组
    
    4、isEmpty 是否空数组
    
    5、add 向数组添加元素
    
    6、subarray  截取数组
    
    7、indexOf  查找下标
    
    8、isEquals  比较数组是否相等
    
    9、toObject  基础类型数据数组转换为对应的Object数组
    
    

    七、org.apache.commons.collections.CollectionUtils

    1、isEmpty 是否为空
    
    2、select 根据条件筛选集合元素
    
    3、transform  根据指定方法处理集合元素,类似List的map()。
    
    4、filter 过滤元素,雷瑟List的filter()
    
    5、find  基本和select一样
    
    6、collect  和transform 差不多一样,但是返回新数组
    
    7、forAllDo  调用每个元素的指定方法。
    
    8、isEqualCollection 判断两个集合是否一致
    

    八、org.apache.commons.codec.digest.DigestUtils

    1、md5Hex MD5加密,返回32位
    
    2、sha1Hex  SHA-1加密
    
    3、sha256Hex SHA-256加密
    
    4、sha512Hex SHA-512加密
    
    5、md5 MD5加密,返回16位
    

    九、org.apache.commons.io.FilenameUtils

    1、getExtension  返回文件后缀名
    
    2、getBaseName  返回文件名,不包含后缀名
    
    3、getName 返回文件全名
    
    4、concat  按命令行风格组合文件路径(详见方法注释)
    
    5、removeExtension  删除后缀名
    
    6、normalize  使路径正常化
    
    7、wildcardMatch  匹配通配符
    
    8、seperatorToUnix   路径分隔符改成unix系统格式的,即/
    
    9、getFullPath  获取文件路径,不包括文件名
    
    10、isExtension  检查文件后缀名是不是传入参数(List<String>)中的一个
    

    十、org.apache.http.util.EntityUtils

    1、toString 把Entity转换为字符串
    
    2、consume 确保Entity中的内容全部被消费。可以看到源码里又一次消费了Entity的内容,假如用户没有消费,那调用Entity时候将会把它消费掉。
    
    3、toByteArray  把Entity转换为字节流
    
    4、consumeQuietly  和consume一样,但不抛异常
    
    5、getContentCharset   获取内容的编码
    

    十一、org.apache.commons.beanutils.PropertyUtils

    1、getProperty 获取对象属性值
    
    2、setProperty 设置对象属性值
    
    3、getPropertyDiscriptor  获取属性描述器
    
    4、isReadable 检查属性是否可访问
    
    5、copyProperties  复制属性值,从一个对象到另一个对象
    
    6、getPropertyDiscriptors  获取所有属性描述器
    
    7、isWriteable  检查属性是否可写
    
    8、getPropertyType 获取对象属性类型
    
    展开全文
  • java雪花算法工具类

    万次阅读 2021-06-04 09:58:13
    创建一个SnowFlake的工具类,然后把下面的代码粘过去就可以了 /** * Twitter_Snowflake<br> * SnowFlake的结构如下(每部分用-分开):<br> * 0 - 0000000000 0000000000 0000000000 0000000000 0 - ...

    创建一个SnowFlake的工具类,然后把下面的代码粘过去就可以了

    
        /**
         * Twitter_Snowflake<br>
         * SnowFlake的结构如下(每部分用-分开):<br>
         * 0 - 0000000000 0000000000 0000000000 0000000000 0 - 00000 - 00000 -
         * 000000000000 <br>
         * 1位标识,由于long基本类型在Java中是带符号的,最高位是符号位,正数是0,负数是1,所以id一般是正数,最高位是0<br>
         * 41位时间截(毫秒级),注意,41位时间截不是存储当前时间的时间截,而是存储时间截的差值(当前时间截 - 开始时间截)
         * 得到的值),这里的的开始时间截
         * ,一般是我们的id生成器开始使用的时间,由我们程序来指定的(如下下面程序IdWorker类的startTime属性)。
         * 41位的时间截,可以使用69年,年T = (1L << 41) / (1000L * 60 * 60 * 24 * 365) = 69<br>
         * 10位的数据机器位,可以部署在1024个节点,包括5位datacenterId和5位workerId<br>
         * 12位序列,毫秒内的计数,12位的计数顺序号支持每个节点每毫秒(同一机器,同一时间截)产生4096个ID序号<br>
         * 加起来刚好64位,为一个Long型。<br>
         * SnowFlake的优点是,整体上按照时间自增排序,并且整个分布式系统内不会产生ID碰撞(由数据中心ID和机器ID作区分),并且效率较高,经测试,
         * SnowFlake每秒能够产生26万ID左右。
         */
    
        // ==============================Fields===========================================
        /** 开始时间截 (2015-01-01) */
        private static final long twepoch = 1420041600000L;
    
        /** 机器id所占的位数 */
        private static final long workerIdBits = 5L;
    
        /** 数据标识id所占的位数 */
        private static final long datacenterIdBits = 5L;
    
        /** 支持的最大机器id,结果是31 (这个移位算法可以很快的计算出几位二进制数所能表示的最大十进制数) */
        private static final long maxWorkerId = -1L ^ (-1L << workerIdBits);
    
        /** 支持的最大数据标识id,结果是31 */
        private static final long maxDatacenterId = -1L ^ (-1L << datacenterIdBits);
    
        /** 序列在id中占的位数 */
        private static final long sequenceBits = 12L;
    
        /** 机器ID向左移12位 */
        private static final long workerIdShift = sequenceBits;
    
        /** 数据标识id向左移17位(12+5) */
        private static final long datacenterIdShift = sequenceBits + workerIdBits;
    
        /** 时间截向左移22位(5+5+12) */
        private static final long timestampLeftShift = sequenceBits + workerIdBits
                + datacenterIdBits;
    
        /** 生成序列的掩码,这里为4095 (0b111111111111=0xfff=4095) */
        private  static final long sequenceMask = -1L ^ (-1L << sequenceBits);
    
        /** 工作机器ID(0~31) */
        private static long workerId;
    
        /** 数据中心ID(0~31) */
        private static long datacenterId;
    
        /** 毫秒内序列(0~4095) */
        private static long sequence = 0L;
    
        /** 上次生成ID的时间截 */
        private static long lastTimestamp = -1L;
    
        // ==============================Constructors=====================================
        /**
         * 构造函数
         *
         * @param workerId
         *            工作ID (0~31)
         * @param datacenterId
         *            数据中心ID (0~31)
         */
        public SnowFlake(long workerId, long datacenterId) {
            if (workerId > maxWorkerId || workerId < 0) {
                throw new IllegalArgumentException(String.format(
                        "worker Id can't be greater than %d or less than 0",
                        maxWorkerId));
            }
            if (datacenterId > maxDatacenterId || datacenterId < 0) {
                throw new IllegalArgumentException(String.format(
                        "datacenter Id can't be greater than %d or less than 0",
                        maxDatacenterId));
            }
            SnowFlake.workerId = workerId;
            SnowFlake.datacenterId = datacenterId;
        }
    
        // ==============================Methods==========================================
        /**
         * 获得下一个ID (该方法是线程安全的)
         *
         * @return SnowflakeId
         */
        public static synchronized long nextId() {
            long timestamp = timeGen();
    
            // 如果当前时间小于上一次ID生成的时间戳,说明系统时钟回退过这个时候应当抛出异常
            if (timestamp < lastTimestamp) {
                throw new RuntimeException(
                        String.format(
                                "Clock moved backwards.  Refusing to generate id for %d milliseconds",
                                lastTimestamp - timestamp));
            }
    
            // 如果是同一时间生成的,则进行毫秒内序列
            if (lastTimestamp == timestamp) {
                sequence = (sequence + 1) & sequenceMask;
                // 毫秒内序列溢出
                if (sequence == 0) {
                    // 阻塞到下一个毫秒,获得新的时间戳
                    timestamp = tilNextMillis(lastTimestamp);
                }
            }
            // 时间戳改变,毫秒内序列重置
            else {
                sequence = 0L;
            }
    
            // 上次生成ID的时间截
            lastTimestamp = timestamp;
    
            // 移位并通过或运算拼到一起组成64位的ID
            return ((timestamp - twepoch) << timestampLeftShift) //
                    | (datacenterId << datacenterIdShift) //
                    | (workerId << workerIdShift) //
                    | sequence;
        }
    
        /**
         * 阻塞到下一个毫秒,直到获得新的时间戳
         *
         * @param lastTimestamp
         *            上次生成ID的时间截
         * @return 当前时间戳
         */
        protected static long tilNextMillis(long lastTimestamp) {
            long timestamp = timeGen();
            while (timestamp <= lastTimestamp) {
                timestamp = timeGen();
            }
            return timestamp;
        }
    
        /**
         * 返回以毫秒为单位的当前时间
         *
         * @return 当前时间(毫秒)
         */
        protected static long timeGen() {
            return System.currentTimeMillis();
        }
    
        public SnowFlake() {
            this(0, 0);
        }
    
        // 生成id
        public static String getId() {
            return String.valueOf(SnowFlake.nextId());
        }
    
        // ==============================Test=============================================
        /** 测试 */
        public static void main(String[] args) {
            System.out.println(SnowFlake.nextId());
        }
    

    注:本文为转载文章,因为转载的人太多了,并且都没有标注出原作者,所以原创作者无从考究。

    展开全文
  • 在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类。 以下工具类、方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码。 一. org.apache.commons.io...
  • java集合工具类

    千次阅读 2019-05-26 21:47:25
    下面小编给大家java的集合工具类:Collections,java提供了一个操作Set、List和Map等集合的工具类:Collections,该工具类里面提供了大量方法对集合元素进行排序、查询和修改等操作,还提供了对集合对象实现同步控制...
  • 利用Jxl编写的 Excle 工具类

    热门讨论 2015-01-26 16:27:51
    利用Jxl编写的 Excle 工具类 ,可以实现将list计划转为为excle输出到前台,还可以将excle转化为list实体集合
  • httpclient封装工具类

    万次阅读 2019-09-03 23:02:05
    前言在日常开发中,我们经常需要通过http协议去调用网络内容,虽然java自身提供了net相关工具包,但是其灵活性和功能总是不如人意,...在项目中对于这个工具类库也许没有进行很好的封装。在哪里使用就写在哪些,很多
  • OSS(一):OSS工具类

    万次阅读 多人点赞 2018-01-13 21:29:03
    【前言】 我们上家公司的存储系统用的是FastDFS(智能一代云平台(二十八...现在在职的公司用的是阿里云的OSS(OSS的官方文档),在工作的时候整理一个上传OSS文件的工具类,现在与大家分享一下。 【工具类】 ...
  • Excel解析easyexcel工具类

    万次阅读 2018-10-06 16:19:48
    本文使用基于阿里的easyexcel编写的工具类对xls后缀的Excel文件(即03版)读取并写成xlsx后缀的Excel文件(即07版),中间转换过程使用String二维数组和对象列表两种形式. easyexcel 项目git地址为: ...
  • 收集了3个不同的连接数据库的类,很经典的封装好的jdbc工具类
  • 文章目录一、elasticsearch官方文档说明1.1 增(只看原理,后面有完整的工具类)1.2 删(只看原理,后面有完整的工具类)1.3 改(只看原理,后面有完整的工具类)1.4 查(只看原理,后面有完整的工具类)二、elastic...
  • Excel导入导出工具类(完整版)

    万次阅读 热门讨论 2019-03-09 13:46:46
    ExcelUtil工具类 package com.gdz.excel.util; import java.io.*; import java.lang.reflect.Field; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.*; import org.apache....
  • java类的转换工具类,泛型的使用

    万次阅读 2021-02-08 15:35:10
    做项目的时候,要取出map中的值进行运算,map对象如下,不知道什么类型,还要进行准确的转换,确实是不容易,然后写一个可扩展的工具类,方便项目使用,也方便大家使用 Map<String,Object> map = new ...
  • Java集合工具类分为两种,一种是java自带的(无需下jar包,jdk自带),一种是其他公司提供的(要去他们官网下jar包,然后导入使用)。 一、java自带的集合工具类 *****************collections工具类的常用方法***...
  • Cron表达式工具类

    千次阅读 2019-08-15 15:56:44
    import java.text.ParseException; import java.util.Date; import org.quartz.... * cron表达式工具类 * * @author huangbaokang * */ public class CronUtils { /** * 返回一个布尔值代表一个给定的Cr...
  • POI导出Excel工具类(简单看完就会)

    千次阅读 2019-03-08 11:49:46
    (一)POI介绍 Apache POI是Apache软件基金会的开源项目,POI提供API给Java程序对Microsoft Office格式...本文介绍的是用POI做一个导出excel报表的工具类,相当实用也相当简单。 (二)POI导出报表要用到的包 1...
  • 实用的BeanUtils工具类

    千次阅读 2020-08-13 20:59:27
    其实也不然, 个人感觉还是用的方式是否正确,本工具类提供简单的对象复 制,json序列化方式实现对象复制,深层次完成属性的完美复制. import com.alibaba.fastjson.serializer.SerializerFeature; import java.lang....
  • Java.Utils:Alibaba - JSON 工具类

    万次阅读 2019-12-12 15:10:10
    /** * Alibaba - JSON 对象工具类 * * @author:bood * @date:2020/9/23 */ public final class JsonUtils { public JsonUtils() { } /** * 值过滤器 */ private static ValueFilter filter = new ValueFilter() {...
  • Redis工具类封装RedisUtils

    万次阅读 多人点赞 2019-02-26 14:34:37
    本文参考: ... SpringBoot项目集成Redis相当简单,只需要pom中加入对应依赖 ... <groupId>org.spring...使用该工具类有一个小前提,SpringUtils中必须完成ApplicationContext的注入,注入方式有很多,此处就不表了

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,413,616
精华内容 965,446
关键字:

工具类