package com.xinli.broadband2.self.util;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Random;
public class Util {
/**
* ---xiaowu
*
* -----------------------------------------
* 一般常用的格式为下面这些:
* y 年/M 月/d 日/h 时 在上午或下午 (1~12)/H 时 在一天中 (0~23)
* m 分/s 秒/S 毫秒
* -------------------------------------------
*
* 根据自己设定的格式获得当前时间
* @param format :时间格式 如:yyyy-MM-dd HH:mm:ss
* @return 自己设置的时间格式
*/
public static String getCurrentDateFormat(String format)
{
SimpleDateFormat df = new SimpleDateFormat(format);
return df.format(new Date());
}
/**
* --xiaowu
*
* 将给定的时间根据自己设定的格式转换后返回一个时间格式的字符串
* @param date
* @param format
* @return
*/
public static String getDateFormat(Date date,String format)
{
SimpleDateFormat df = new SimpleDateFormat(format);
return df.format(date);
}
/**
* --xiaowu 对于位数较大的随机数来讲,此方法明显要快很多(相比与getRandomString方法)
*
* 随机数的个数(有可能会重复,数位越多重复的可能性就越小,
* 如果位数很大,就采用随机数加随机数的方式构造更大的随机数)
* @param numLength :
* @return 指定个数的随机数(位数不够,补0后截断)
*/
public static String getRandNumByLength(int numLength)
{
String randNum="";
if(numLength<0) return "000000000";
if(numLength>9)
{
int i= numLength/9;
int j= numLength%9;
for (int t=0;t<i;t++)
{
Random rand=new Random();
String randDate="000000000"+rand.nextInt(1000000000);
randNum+=randDate.substring(randDate.length()-9, randDate.length());
}
if(j>0)
{
Random rand=new Random();
String randDate="000000000"+rand.nextInt((int)(Math.pow(10,j)));
randNum+=randDate.substring(randDate.length()-j, randDate.length());
}
return randNum;
}
else
{
Random rand=new Random();
String randDate="000000000"+rand.nextInt((int)(Math.pow(10,numLength)));
//System.out.println(randDate);
randNum=randDate.substring(randDate.length()-numLength, randDate.length());
}
return randNum;
}
/**
* --xiaowu
*
* 获取num(最好大于14位,若小于14位,此方法退化为随机数的生成)位流水号(要求不重复)
*
* 当前时间的纳秒数+n位随机数(n=要求流水号的位数-当前时间纳秒数的位数)
* 当前时间的纳秒数几乎不会重复,若再加上随机数重复的几率就更小了。
* @param num:流水号的位数
* @return
*/
public static String getSerialNumber(int num)
{
String currentTime=System.nanoTime()+"";
if(num<currentTime.length()) return currentTime.substring(currentTime.length()-num,currentTime.length());
return currentTime+getRandNumByLength(num-currentTime.length());
}
/**
* ----xiaowu
*
* 随机数的生成
* @param nRandomCount 随机数的位数
* @param isNumber ---true:随机数全为数字;false:随机数为数字字母混编;
* @return
*/
public static String getRandomString(int nRandomCount, boolean isNumber) {
char[] a = null;
if (isNumber) {
a = new char[10];
for (int i = 48, j = 0; i <= 57; i++, j++) {
a[j] = (char) i;
}
} else {
// ASCII 48~57, String 0~9;
// ASCII 65~90, String A-Z;
// ASCII 97~122,String a-z;
a = new char[62];
for (int i = 48, j = 0; i <= 122; i++) {
if ((i > 57 && i < 65) || (i > 90 && i < 97)) {
continue;
} else {
a[j] = (char) i;
j++;
}
}
}
String strRand = "";
int LengthOfRandom = a.length;
Random random = new Random();
for (int i = 0; i < nRandomCount; i++) {
int nRand = random.nextInt(LengthOfRandom);
strRand += a[nRand];
}
return strRand;
}
public static void main(String []args)
{
}
}
分享到:
相关推荐
在Linux操作系统中,util-linux是一个极为重要的软件包,它包含了大量用于系统管理和维护的实用工具。此包以其丰富的功能和广泛的适用性,成为了Linux开发者和系统管理员不可或缺的工具集。在本文中,我们将深入探讨...
1. **MJ.Util**: 这个命名很可能代表了一个包含各种通用功能的工具类库。通常,这样的类库会包括字符串处理、日期时间操作、数学计算、文件系统交互、网络通信等多种实用方法。例如,可能会有`StringUtil`来处理字符...
这些工具使得开发人员可以更容易地在不同平台上实现各种常用服务。具体包括: 1. 数据库接口:支持多种数据库系统,如MySQL、PostgreSQL、Oracle等,通过ODBC或JDBC。 2. 加密库:整合了OpenSSL,提供加密、哈希、...
util 是一些常用的、惯用的工具。 标签:util
1. **`StringUtil`**: - `StringUtil`通常包含一系列静态方法,用于处理和操作字符串。例如,它可能有检查空字符串 (`isEmpty()`)、去除空白 (`trim()`)、比较字符串 (`equals()`)、替换子串 (`replace()`)、分割...
C#常用工具类代码集合Util第二版本(自己工作总结),包括常用工具类,扩展方法工具类,百度地图C#工具类,Echart工具类,Office工具类,Autofac工具类,Web开发常用工具类,Winform开发常用工具类,是自己工作十年...
Java中的`util`工具类是Java Standard Edition (Java SE)库中的重要组成部分,它们提供了许多实用功能,极大地简化了开发工作。在这个主题中,我们将深入探讨`StringUtil`、`FileUtil`、`MD5`、`JsonUtil`以及`...
"util"则表明这是一组实用工具集合,通常包含各种常用的功能,如创建、销毁、操作窗口等。而"wnd"则是“window”的缩写,直指这个库的核心功能与窗口管理有关。 在前端开发中,窗口管理是一个重要的方面,尤其是在...
3. **SHA加密**:SHA系列哈希函数(如SHA-1、SHA-256等)同样用于生成文件的数字指纹,安全性比MD5更高。SHA-256是目前较常用的一种,它产生的摘要更长,发生碰撞的概率更低。在确保文件完整性方面,SHA家族通常更为...
Java的`util`工具类是Java Standard Library中的核心部分,包含了大量的实用类和接口,极大地提高了开发效率。这里我们将深入探讨几个在标题和描述中提到的`util`工具类及其在实际项目中的应用。 1. **MD5加密**: `...
为了提高开发效率,程序员们常常会创建一些实用工具类库,如"C# Util",它整合了多种常用的功能模块,使得代码复用变得更为便捷。下面将详细阐述这个工具类库中的主要组成部分及其应用场景。 1. **Json**: JSON...
Java模板工具库是一种高效开发辅助工具,主要用于自动化代码生成,以减轻程序员手动编写常见业务类的工作负担。在Java开发中,尤其是企业级应用,我们经常需要处理大量的数据库操作,包括创建与数据库表对应的实体类...
"ios-util-master"项目提供的工具对于iOS开发者来说是非常实用的,它简化了音频文件的管理和处理,使得在iOS应用中实现音频格式转换变得更加容易。如果你需要在你的项目中集成这样的功能,可以研究该项目的源代码,...
字符串工具类/数据类型转换类/集合工具类/数组工具类/Properties文件操作类/常用流操作工具类/编码工具类/Json工具类/日期工具类/下载文件工具类/解压ZIP工具类/文件编码转码
首先,`ares_util`这个名字暗示了它可能是一个提供通用实用工具的库,"ares"可能是开发者的自定义缩写或项目代号,"util"则是英文"utility"的缩写,通常用于表示各种实用工具或函数的集合。在Python中,这样的库往往...
ASM是一个强大的Java字节码操控和分析...asm-2.2.3.jar、asm-commons-2.2.3.jar和asm-util-2.2.3.jar这三部分构成了ASM 2.2.3版本的主要组件,分别提供了核心功能、常用工具和辅助类,以满足不同层次的字节码操作需求。
JavaScript常用方法 非常抱歉, 因操作失误导致npm上v0.1.10以前版本全都没了, 之后的版本完全兼容以前的写法, 请放心食用 orz 使用方法 通过npm安装 npm i util-es import Util from 'util-es' import { isEmpty, ...
在给定的压缩包文件中,包含的是Apache安装过程中常用的三个关键依赖包:`apr-1.5.2.tar.gz`, `apr-util-1.5.4.tar.gz`, 和 `pcre-8.32.tar.gz`。 1. **Apache Portable Runtime (APR)** APR 是 Apache ...
"java常用工具类封装util.rar"这个压缩包文件很可能包含了开发者为了提高代码复用性和简洁性而编写的各种实用工具类。下面将详细介绍一些Java开发中常见的工具类及其功能。 1. **字符串处理工具类(StringUtil)**:...
Util --- Android开发工具 gradle依赖 compile 'cn.alien95:util:1.1.3' 使用方法 初始化 >开发中常用的一些方法(如:Log,Toast,SnackBar,getScreenWidth,dip2px等等)。 注意:Log的打印应该在Debug模式下。...