java 判断格式
来源:互联网 发布:mac激活步骤 编辑:程序博客网 时间:2024/05/16 19:22
/**
*判断是否是数字
*/
public static boolean isNum(String str){ return str.matches("^[-+]?(([0-9]+)([.]([0-9]+))?|([.]([0-9]+))?)$"); } /** * 判断是否是时间 * @param str * @return */ public static boolean isTime(String str){ return str.matches("^[-+]?(([0-9]+)([:]([0-9]+))?|([:]([0-9]+))?)$"); } /** * 将数字格式字符串改为保留两位小数,将时间格式字符串分钟保留两位数 * @param str * @return */ public static String stringFormat(String str){ NumberFormat nf = NumberFormat.getNumberInstance(); nf.setMaximumFractionDigits(2); if (isNum(str)) { str = nf.format(Double.parseDouble(str)); } else if (isTime(str)) { String[] rowStr = str.split(":"); if (rowStr.length > 1) { if (rowStr[1].length()>2) { str = rowStr[0] + ":" + rowStr[1].substring(0, 2); } } } return str; }
<pre name="code" class="java">// 十六进制字符串转化成字节数组 每两位字符串转成一个字节
<pre name="code" class="java">public static byte[] hexStr2ByteArray(String hexString) { if (StringUtils.isEmpty(hexString)) throw new IllegalArgumentException("this hexString must not be empty"); hexString = hexString.toLowerCase(); final byte[] byteArray = new byte[hexString.length() / 2]; int k = 0; for (int i = 0; i < byteArray.length; i++) { //因为是16进制,最多只会占用4位,转换成字节需要两个16进制的字符,高位在先 //将hex 转换成byte "&" 操作为了防止负数的自动扩展 // hex转换成byte 其实只占用了4位,然后把高位进行右移四位 // 然后“|”操作 低四位 就能得到 两个 16进制数转换成一个byte. byte high = (byte) (Character.digit(hexString.charAt(k), 16) & 0xff); byte low = (byte) (Character.digit(hexString.charAt(k + 1), 16) & 0xff); byteArray[i] = (byte) (high << 4 | low); System.out.print(byteArray[i]+":"+hexString.substring(2*i,2*(i+1))+"."); k += 2; } return byteArray; }
/** *时间工具类**/package com.geetion.system.collection.jt808.tool;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;public class DateUtil { private static transient final Logger LOGGER = LoggerFactory.getLogger(DateUtil.class); /** * 格式:yyyy */ public static SimpleDateFormat YEARFORMATER() { return new SimpleDateFormat("yyyy"); } /** * 格式:yyyyMM */ public static SimpleDateFormat MONTHFORMATER() { return new SimpleDateFormat("yyyyMM"); } /** * 格式:yyyy年MM月 */ public static SimpleDateFormat MONTHFORMATERSTR() { return new SimpleDateFormat("yyyy年MM月"); } /** * 格式:yyyyMMdd */ public static SimpleDateFormat DATEFORMATER() { return new SimpleDateFormat("yyyyMMdd"); } /** * 格式:yyyy年MM月dd日 */ public static SimpleDateFormat DATEFORMATER1() { return new SimpleDateFormat("yyyy年MM月dd日"); } /** * 格式:yyyy-MM-dd */ public static SimpleDateFormat DATEFORMATER2() { return new SimpleDateFormat("yyyy-MM-dd"); } /** * 格式:MM-dd HH:mm */ public static SimpleDateFormat DATEFORMATER3() { return new SimpleDateFormat("yyMMddHHmmss"); } /** * 格式:yyyyMMdd-HH:mm:ss */ public static SimpleDateFormat TIMEFORMATER() { return new SimpleDateFormat("yyyyMMdd-HH:mm:ss"); } /** * 格式:yyyy-MM-dd HH:mm:ss */ public static SimpleDateFormat TIMEFORMATER1() { return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); } /** * 格式:yyMMddHHmmss */ public static SimpleDateFormat TIMEFORMATER3() { return new SimpleDateFormat("yyMMddHHmmss"); } /** * 格式:MM-dd HH:mm */ public static SimpleDateFormat TIMEFORMATER4() { return new SimpleDateFormat("MM-dd HH:mm"); } /** * 格式:yyyyMMddHHmmss */ public static SimpleDateFormat TIMEFORMATER_yyyyMMddHHmmss() { return new SimpleDateFormat("yyyyMMddHHmmss"); } public static Date formatTime(String timeStr) { Date date = null; try { date = TIMEFORMATER().parse(timeStr); } catch (Exception e) { String errorMsg = String.format("解析日期失败,非法的日期格式[%s], 正确格式为[yyyyMMdd-HH:mm:ss]", timeStr); LOGGER.trace(errorMsg); } return date; } public static Date stringToDatetime(String timeStr){ Date date = null; try { date = TIMEFORMATER1().parse(timeStr); } catch (Exception e) { String errorMsg = String.format("解析日期失败,非法的日期格式[%s], 正确格式为[yyyy-MM-dd HH:mm:ss]", timeStr); LOGGER.trace(errorMsg); } return date; } public static Date formatDate(String dateStr) { Date date = null; try { date = DATEFORMATER().parse(dateStr); } catch (Exception e) { String errorMsg = String.format("解析日期失败,非法的日期格式[%s]", dateStr); LOGGER.trace(errorMsg); } return date; } public static Date formatDate(Date date) { String dateString = DATEFORMATER().format(date); Date formatedDate = null; try { formatedDate = DATEFORMATER().parse(dateString); } catch (Exception e) { LOGGER.trace(e.getMessage()); e.printStackTrace(); } return formatedDate; } public static Date addHour(Date date, int hour) { Calendar c = Calendar.getInstance(); c.setTime(date); c.add(Calendar.HOUR, hour); return c.getTime(); } public static Date addDate(Date date, int day) { Calendar c = Calendar.getInstance(); c.setTime(date); c.add(Calendar.DATE, day); return c.getTime(); } public static Date formatMonth(Date date) { String dateString = MONTHFORMATER().format(date); Date formatedDate = null; try { formatedDate = MONTHFORMATER().parse(dateString); } catch (Exception e) { LOGGER.trace(e.getMessage()); e.printStackTrace(); } return formatedDate; } public static Date addMonth(Date date, int month) { Calendar c = Calendar.getInstance(); c.setTime(date); c.add(Calendar.MONTH, month); return c.getTime(); } public static Date formatYear(Date date) { String dateString = YEARFORMATER().format(date); Date formatedDate = null; try { formatedDate = YEARFORMATER().parse(dateString); } catch (Exception e) { LOGGER.trace(e.getMessage()); e.printStackTrace(); } return formatedDate; } public static Date addYear(Date date, int year) { Calendar c = Calendar.getInstance(); c.setTime(date); c.add(Calendar.YEAR, year); return c.getTime(); } public static String stratTimeToday(Date date) { Calendar c = Calendar.getInstance(); c.setTime(date); c.set(Calendar.HOUR_OF_DAY, 0); c.set(Calendar.MINUTE, 0); c.set(Calendar.SECOND, 0); return TIMEFORMATER1().format(c.getTime()); } public static String endTimeToday(Date date) { Calendar c = Calendar.getInstance(); c.setTime(date); c.set(Calendar.HOUR_OF_DAY, 23); c.set(Calendar.MINUTE, 59); c.set(Calendar.SECOND, 59); return TIMEFORMATER1().format(c.getTime()); } public static boolean isToday(Date date) { Date today = formatDate(new Date()); date = formatDate(date); return (today.getTime() == date.getTime()); } public static boolean isCurMonth(Date date) { Date today = formatMonth(new Date()); date = formatMonth(date); return (today.getTime() == date.getTime()); } public static boolean isCurYear(Date date) { Date curYear = formatYear(new Date()); date = formatMonth(date); return (curYear.getTime() == date.getTime()); } public static Date getCalendarStart(Date date) { Date firstDay = formatMonth(date); Calendar calendar = Calendar.getInstance(); calendar.setTime(firstDay); int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK); return addDate(firstDay, 1 - dayOfWeek); } public static Date getCalendarEnd(Date date) { Date firstDay = formatMonth(date); Calendar calendar = Calendar.getInstance(); calendar.setTime(firstDay); calendar.add(Calendar.MONTH, 1); calendar.add(Calendar.DATE, -1); int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK); calendar.add(Calendar.DATE, Calendar.DAY_OF_WEEK - dayOfWeek); return calendar.getTime(); } public static Date getStarDateByYear(int year) { Calendar c = Calendar.getInstance(); c.set(Calendar.YEAR, year); c.set(Calendar.MONTH, 0); c.set(Calendar.DAY_OF_MONTH, 1); c.set(Calendar.HOUR_OF_DAY, 0); c.set(Calendar.MINUTE, 0); c.set(Calendar.SECOND, 0); c.set(Calendar.MILLISECOND, 0); return c.getTime(); } public static Date getEndDateByYear(int year) { Calendar c = Calendar.getInstance(); c.set(Calendar.YEAR, year + 1); c.set(Calendar.MONTH, 0); c.set(Calendar.DAY_OF_MONTH, 1); c.set(Calendar.HOUR_OF_DAY, 0); c.set(Calendar.MINUTE, 0); c.set(Calendar.SECOND, 0); c.set(Calendar.MILLISECOND, 0); return c.getTime(); } /** * 求两个日期差 endDate - beginDate * * @param beginDate * 开始日期 * @param endDate * 结束日期 * @return 两个日期相差天数 */ public static long getDateMargin(Date beginDate, Date endDate) { long margin = 0; margin = endDate.getTime() - beginDate.getTime(); margin = margin / (1000 * 60 * 60 * 24); return margin; } public static void main(String[] args) throws ParseException { System.out.println(TIMEFORMATER1().format(getStarDateByYear(2013))); Date d = stringToDatetime("2015-04-07 14:00:00"); Date d1 = stringToDatetime("2015-04-07 14:01:00"); Calendar c = Calendar.getInstance(); c.setTime(d); System.out.println(c.get(Calendar.YEAR)); System.out.println(getSeconds(d,d1)); } public static Date getDate(Date date, int field, int i) {if (date == null)return null;Calendar calendar = Calendar.getInstance();calendar.setTime(date);calendar.add(field, i);return calendar.getTime();} public static double getSeconds(Date start, Date end) { double diffInSeconds = 0.001 * (end.getTime() - start.getTime()); return diffInSeconds; } }
0 0
- JAVA 判断EMAIL格式
- java 判断格式
- java判断字符编码格式
- Java判断文件编码格式
- java判断文件编码格式
- Java判断文件编码格式
- java中判断日期格式
- java 判断格式是否正确
- java判断文件编码格式
- java判断文件编码格式
- Java判断文件编码格式
- java实现判断邮箱格式
- java判断文件编码格式
- java判断文件编码格式
- 判断java文件编码格式
- java判断是否是Email格式
- Java里判断Image文件信息格式
- java 判断电话号码,邮箱格式是否正确
- QT信号和槽以结构体为参数传递复杂数据
- FFMPEG解码器流程初步接触
- Python 启动多个别的Linux应用程序
- IntelliJ IDEA创建 SBT项目
- Boost.Any 源码解析
- java 判断格式
- CodeForces 601A (dijkstra算法)
- Glide加载图片之ListAdapter篇
- Caffe学习系列:数据可视化环境(python接口)配置
- 一个本没有错误的错误
- AC自动机-多模式匹配算法
- Exception遇到的坑——1
- linux iio子系统
- oracle的行级触发器使用