Java日期格式之间的相互转换代码
package com.hxhk.cc.util; import java.text.SimpleDateFormat; import java.util.Date; import com.lowagie.text.pdf.codec.postscript.ParseException; public class DateUtil { /** * @param args * @throws java.text.ParseException * @throws ParseException */ public static void main(String[] args) throws ParseException, java.text.ParseException { DateUtil du = new DateUtil(); //String s = du.numToDate(1350144260, "yyyy-MM-dd hh:mm:ss"); long time = du.stringToLong("2012-10-15 8:44:53", "yyyy-MM-dd hh:mm:ss")/1000; long time1 = du.stringToLong("2012-10-15 20:44:53", "yyyy-MM-dd hh:mm:ss")/1000; String date = du.longToString(1350470693,"yyyy-MM-dd hh:mm:ss" ); System.out.println(time); System.out.println(time1); System.out.println(date); } // date类型转换为String类型 // formatType格式为yyyy-MM-dd HH:mm:ss//yyyy年MM月dd日 HH时mm分ss秒 // data Date类型的时间 public static String dateToString(Date data, String formatType) { return new SimpleDateFormat(formatType).format(data); } // long类型转换为String类型 // currentTime要转换的long类型的时间 // formatType要转换的string类型的时间格式 public static String longToString(long currentTime, String formatType) throws ParseException, java.text.ParseException { Date date = longToDate(currentTime, formatType); // long类型转成Date类型 String strTime = dateToString(date, formatType); // date类型转成String return strTime; } // string类型转换为date类型 // strTime要转换的string类型的时间,formatType要转换的格式yyyy-MM-dd HH:mm:ss//yyyy年MM月dd日 // HH时mm分ss秒, // strTime的时间格式必须要与formatType的时间格式相同 public static Date stringToDate(String strTime, String formatType) throws ParseException, java.text.ParseException { SimpleDateFormat formatter = new SimpleDateFormat(formatType); Date date = null; date = formatter.parse(strTime); return date; } // long转换为Date类型 // currentTime要转换的long类型的时间 // formatType要转换的时间格式yyyy-MM-dd HH:mm:ss//yyyy年MM月dd日 HH时mm分ss秒 public static Date longToDate(long currentTime, String formatType) throws ParseException, java.text.ParseException { Date dateOld = new Date(currentTime); // 根据long类型的毫秒数生命一个date类型的时间 String sDateTime = dateToString(dateOld, formatType); // 把date类型的时间转换为string Date date = stringToDate(sDateTime, formatType); // 把String类型转换为Date类型 return date; } // string类型转换为long类型 // strTime要转换的String类型的时间 // formatType时间格式 // strTime的时间格式和formatType的时间格式必须相同 public static long stringToLong(String strTime, String formatType) throws ParseException, java.text.ParseException { Date date = stringToDate(strTime, formatType); // String类型转成date类型 if (date == null) { return 0; } else { long currentTime = dateToLong(date); // date类型转成long类型 return currentTime; } } // date类型转换为long类型 // date要转换的date类型的时间 public static long dateToLong(Date date) { return date.getTime(); } public static String numToDate(int number,String formatType){ Date date = new Date(number); SimpleDateFormat sdf = new SimpleDateFormat(formatType); return sdf.format(date); } }