发现工作中一些小的工具类代码还是挺好用的, 比如获取20位ID,判断一个字符串是否都为数字,判断当天是否是当月的第一天 等等这样的代码, 写的时候也比较快, 但是用的多的话, 还是写篇随笔记录下. 到时候再用到的时候可以直接用.
获取20位ID
//获取20位ID
public static String getGuid() {
HBYAppUtils.Guid+=1;
long now = System.currentTimeMillis();
//获取4位年份数字
SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy");
//获取时间戳
String time=dateFormat.format(now);
String info=now+"";
//获取三位随机数
//int ran=(int) ((Math.random()*9+1)*100);
//要是一段时间内的数据连过大会有重复的情况,所以做以下修改
int ran=0;
if(HBYAppUtils.Guid>999){
HBYAppUtils.Guid=100;
}
ran=HBYAppUtils.Guid;
return time+info.substring(2, info.length())+ran;
}
判断一个字符串是否都为数字
public static HashMap<String, Boolean> isDigit(String str) {
HashMap<String, Boolean> map = new HashMap<>();
String reg = "^[0-9]+(.[0-9]+)?$";
boolean isWord = str.matches("[a-zA-Z]+");
boolean isNumber = str.matches(reg);
map.put("isWord", isWord);
map.put("isNumber", isNumber);
return map;
}
判断当天是否是当月的第一天,获取昨天的日期
//获取昨天的日期
public static String yesterday() {
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, -24);
String yesterdayDate = dateFormat.format(calendar.getTime());
return yesterdayDate;
}
//判断当天是否是当月的第一天
public static boolean isOne() {
boolean flag = false;
Calendar c = Calendar.getInstance();//可以对每个时间域单独修改
int date = c.get(Calendar.DATE);
if (date == 1) {
return true;
}
return flag;
}
获取随机六位数验证码
public static String code() {
String sources = "0123456789"; // 加上一些字母,就可以生成pc站的验证码了
Random rand = new Random();
StringBuffer flag = new StringBuffer();
for (int j = 0; j < 6; j++) {
flag.append(sources.charAt(rand.nextInt(9)) + "");
}
return flag.toString();
}
利用流获取PDF某某关键字同一行的内容
public static ArrayList<String> ssxqContent(String path, String ssContent) {
ArrayList<String> list = new ArrayList<>();
try {
URL url = new URL(path);
URLConnection conn = url.openConnection();
PDDocument document = null;
// 方式一:
InputStream input = conn.getInputStream();
//加载 pdf 文档
PDFParser parser = new PDFParser(new RandomAccessBuffer(input));
parser.parse();
document = parser.getPDDocument();
// 方式二:
// document= PDDocument.load(pdfFile);
// 获取页码
int pages = document.getNumberOfPages();
// 读文本内容
PDFTextStripper stripper = new PDFTextStripper();
// 设置按顺序输出
stripper.setSortByPosition(true);
stripper.setStartPage(1);
stripper.setEndPage(pages);
String content = stripper.getText(document);
//System.out.println(content);
String str = "";
BufferedReader bre = new BufferedReader(new InputStreamReader(new ByteArrayInputStream(content.getBytes(Charset.forName("utf8"))), Charset.forName("utf8")));
while ((str = bre.readLine()) != null) {
if (str.contains(ssContent)) {
list.add(str);
}
}
} catch (Exception e) {
e.printStackTrace();
return list;
}
return list;
}