我们在实际开发中会经常碰到时间转换的问题,特别你是在一家外企工作的时候,经常要转成国外时间。。。秉着能偷懒的精神就偷懒的精神,此时我们就应该写个工具类。
话不多说直接贴代码:
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class DateUtil {
public static long getTimeSlice(String startDate, String endDate) {
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
Date d1 = df.parse(startDate);
Date d2 = df.parse(endDate);
long diff = d2.getTime() - d1.getTime();//这样得到的差值是微秒级别
return diff;
} catch (Exception e) {
e.printStackTrace();
}
return 0;
}
public static String getFormatTime(long timeSlice) {
long day = timeSlice / (24 * 60 * 60 * 1000);
long hour = (timeSlice / (60 * 60 * 1000) - day * 24);
long min = ((timeSlice / (60 * 1000)) - day * 24 * 60 - hour * 60);
String strTime = hour + " hour " + min + " minute";
return strTime;
}
public static String dateFormat(String date, String format) {
SimpleDateFormat formatter = new SimpleDateFormat(format);
Date d = null;
try {
d = formatter.parse(date); // 将给定的字符串中的日期提取出来
} catch (Exception e) { // 如果提供的字符串格式有错误,则进行异常处理
e.printStackTrace(); // 打印异常信息
}
String dateString = formatter.format(d);
return dateString;
}
public static String getNowDate(String format) {
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat(format);
String strDate = sdf.format(date);
return strDate;
}
public static String getDevTime(String time) {
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = sdf.parse(time);
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.MINUTE, -90);
String dateStr = sdf.format(calendar.getTimeInMillis());
return dateStr;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
public static String getDevDate(String date, int day) {
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date dates = sdf.parse(date);
Calendar calendar = Calendar.getInstance();
calendar.setTime(dates);
calendar.add(Calendar.DAY_OF_MONTH, day);
String dateStr = sdf.format(calendar.getTime());
return dateStr;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
public static Date stringToDate(String strDate, String format) {
SimpleDateFormat sdf = new SimpleDateFormat(format);
try {
Date date = sdf.parse(strDate);
return date;
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
public static String dateToString(Date date, String format) {
SimpleDateFormat sdf = new SimpleDateFormat(format);
String strDate = sdf.format(date);
return strDate;
}
public static void main(String[] args) {
Date date = new Date();
System.out.println(dateToString(date,"yyyyMMddHHmmss"));
}
}
好了,以上就到这了,如果代码中有问题的地方,欢迎大家指出来。
多写工具类,不用加晚班—