package com.taobao.zeus.util; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * Zeus日期工具类 * 用于界面配置项的动态替换 * @author zhoufang * */ public class ZeusDateTool { public ZeusDateTool(Date date){ this.calendar.setTime(date); } private Calendar calendar=Calendar.getInstance(); public ZeusDateTool addDay(int amount){ calendar.add(Calendar.DAY_OF_YEAR, amount); return this; } public ZeusDateTool add(int field,int amount){ calendar.add(field, amount); return this; } public String format(String pattern){ SimpleDateFormat format=new SimpleDateFormat(pattern); return format.format(calendar.getTime()); } public String currentTimestamp(){ return String.valueOf(System.currentTimeMillis()/1000); } public static void main(String[] args) { String v=new ZeusDateTool(new Date()).format("yyyy-MM-dd HH:mm:ss"); System.out.println(v); System.out.println(DateUtil.getDefaultRawOffset()); System.out.println(StringToDateStr("2015-04-24 14:58:11", "yyyy-MM-dd HH:mm:ss", "yyyyMMddHHmm")); } /** * 日期格式字符串互相转换 * @param dateStr 需要转换的字符串 * @param formatStr 需要格式的目标字符串 举例 yyyy-MM-dd * @return outFormatStr 需要格式的输出字符串 举例 yyyy-MM-dd * @throws ParseException 转换异常 */ public static String StringToDateStr(String dateStr,String formatStr, String outFormatStr){ DateFormat sdf = new SimpleDateFormat(formatStr); SimpleDateFormat outDateFormat=new SimpleDateFormat(outFormatStr); Date date = null; String outDateStr = ""; try { date = sdf.parse(dateStr); outDateStr = outDateFormat.format(date); } catch (ParseException e) { e.printStackTrace(); } return outDateStr; } /** * 字符串转换到时间格式 * @param dateStr 需要转换的字符串 * @param formatStr 需要格式的目标字符串 举例 yyyy-MM-dd * @return Date 返回转换后的时间 * @throws ParseException 转换异常 */ public static Date StringToDate(String dateStr,String formatStr){ DateFormat sdf=new SimpleDateFormat(formatStr); Date date=null; try { date = sdf.parse(dateStr); } catch (ParseException e) { e.printStackTrace(); } return date; } }