đây là class chứa một số hàm cơ bản thao tác trên kiểu Date
(sử dụng thêm thư viện joda-time của java)
http://www.joda.org/joda-time/
package test;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.joda.time.DateTime;
import org.joda.time.Years;
import org.joda.time.format.DateTimeFormat;
public class DateUtil {
private static SimpleDateFormat simpleDateFormat;
/**
* get String of system date
*
* @param format
* @return String
*/
public static String getSystemDateString(String format) {
simpleDateFormat = new SimpleDateFormat(format);
return simpleDateFormat.format(new Date());
}
/**
* convert Date to String
*
* @param date
* @param format
* @return String of date
*/
public static String convertDateToString(Date date, String format) {
if (null == date) {
return null;
}
simpleDateFormat = new SimpleDateFormat(format);
return simpleDateFormat.format(date);
}
/**
* convert String to date
*
* @param dateString
* @param format
* @return date
*/
public static Date convertStringToDate(String dateString, String format) {
if (null == dateString || "".equals(dateString.trim())) {
return null;
}
return DateTime.parse(dateString, DateTimeFormat.forPattern(format))
.toDate();
}
/**
* calculate age
*
* @param birthday
* @return age
*/
public static int calculateAge(Date birthday) {
DateTime dtBirthday = new DateTime(birthday);
DateTime now = new DateTime();
Years age = Years.yearsBetween(dtBirthday, now);
return age.getYears();
}
/**
* add num day into date
*
* @param number
* @param date
* @return added date
*/
public static Date addingDays(int number, Date date) {
DateTime dt = new DateTime(date);
return dt.plusDays(number).toDate();
}
public static void main(String[] args) {
String format = "dd/MM/yyyy";
String dateString = "28/02/1991";
Date date = null;
Date now = new Date();
System.out.println(getSystemDateString(format));
date = convertStringToDate(dateString, format);
System.out.println(date.toString());
System.out
.println(calculateAge(convertStringToDate(dateString, format)));
System.out.println(convertDateToString(now, format));
System.out.println("after adding: ");
System.out.println(convertDateToString(addingDays(-90, now), format));
System.out.println(convertDateToString(addingDays(20, now), format));
}
}
Không có nhận xét nào:
Đăng nhận xét