import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class Test20170519 {
/**
* 得到某年某月的第一天
*
* @param year
* @param month
* @return
*/
public String getFirstDayOfMonth(int year, int month) {
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, year);
cal.set(Calendar.MONTH, month-1);
cal.set(Calendar.DAY_OF_MONTH, cal.getMinimum(Calendar.DATE));
return new SimpleDateFormat("yyyy/MM/dd").format(cal.getTime());
}
public static Date getFistDayOfNow(Date date) {
if (date == null) {
return null;
}
Calendar c = Calendar.getInstance();
c.setTime(date);
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH);
//int day = c.get(Calendar.DAY_OF_MONTH);
c.set(year,month,1);
return c.getTime();
}
/**
* 取得当前日期
* @return
*/
public static Date getCurrentDate(){
Calendar date = Calendar.getInstance();
return date.getTime();
}
/**
* 日期转换
*/
public static String format(Date date) {
if (date == null) {
return "";
}
dateFormat = new SimpleDateFormat("yyyy-MM-dd");
return dateFormat.format(date);
}
/**
* 日期转换
*/
public static String Dateformat(Date date) {
if (date == null) {
return "";
}
dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return dateFormat.format(date);
}
/**
* 默认日期类型格试.
*
* @see
*/
private static SimpleDateFormat dateFormat = new SimpleDateFormat();
/**
* 计算两个整型日期之间的天数
*
* @param startDate
* @param endDate
* @return
*/
public static Integer daysBetweenDate(Integer startDate, Integer endDate) {
if (startDate == null || endDate == null) {
return null;
}
Calendar c1 = newCalendar(startDate);
Calendar c2 = newCalendar(endDate);
Long lg = (c2.getTimeInMillis() - c1.getTimeInMillis()) / 1000 / 60 / 60 / 24;
return lg.intValue();
}
/**
* 根据整型日期生成Calendar
*
* @param date
* @return
*/
public static Calendar newCalendar(int date) {
int year = date / 10000;
int month = (date %10000) / 100;
int day = date % 100;
Calendar ret = Calendar.getInstance();
ret.set(year, month - 1, day);
return ret;
}
public static void main(String[] args) {
//获取当前年月的第一天日期
System.out.println(Test20170519.format(Test20170519.getFistDayOfNow(Test20170519.getCurrentDate())));
//获取当前年月日期
System.out.println(Test20170519.format(Test20170519.getCurrentDate()));
//获取当前年月日时分秒日期
System.out.println(Test20170519.Dateformat(new Date()));
//时间格式化
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//调用时间底层方法(获取当前日期)
System.out.println(formatter.format(new Date()));
//去掉非0-9的其他字符
String reg="[^0-9]";
//转化为integer类型
Integer startDate=Integer.valueOf(Test20170519.format(Test20170519.getFistDayOfNow(Test20170519.getCurrentDate())).replaceAll(reg, ""));
Integer endDate=Integer.valueOf(Test20170519.format(Test20170519.getCurrentDate()).replaceAll(reg, ""));
//计算两个整型日期之间的天数
System.out.println(Test20170519.daysBetweenDate(startDate, endDate));
}
}
import java.util.Calendar;
import java.util.Date;
public class Test20170519 {
/**
* 得到某年某月的第一天
*
* @param year
* @param month
* @return
*/
public String getFirstDayOfMonth(int year, int month) {
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, year);
cal.set(Calendar.MONTH, month-1);
cal.set(Calendar.DAY_OF_MONTH, cal.getMinimum(Calendar.DATE));
return new SimpleDateFormat("yyyy/MM/dd").format(cal.getTime());
}
public static Date getFistDayOfNow(Date date) {
if (date == null) {
return null;
}
Calendar c = Calendar.getInstance();
c.setTime(date);
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH);
//int day = c.get(Calendar.DAY_OF_MONTH);
c.set(year,month,1);
return c.getTime();
}
/**
* 取得当前日期
* @return
*/
public static Date getCurrentDate(){
Calendar date = Calendar.getInstance();
return date.getTime();
}
/**
* 日期转换
*/
public static String format(Date date) {
if (date == null) {
return "";
}
dateFormat = new SimpleDateFormat("yyyy-MM-dd");
return dateFormat.format(date);
}
/**
* 日期转换
*/
public static String Dateformat(Date date) {
if (date == null) {
return "";
}
dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return dateFormat.format(date);
}
/**
* 默认日期类型格试.
*
* @see
*/
private static SimpleDateFormat dateFormat = new SimpleDateFormat();
/**
* 计算两个整型日期之间的天数
*
* @param startDate
* @param endDate
* @return
*/
public static Integer daysBetweenDate(Integer startDate, Integer endDate) {
if (startDate == null || endDate == null) {
return null;
}
Calendar c1 = newCalendar(startDate);
Calendar c2 = newCalendar(endDate);
Long lg = (c2.getTimeInMillis() - c1.getTimeInMillis()) / 1000 / 60 / 60 / 24;
return lg.intValue();
}
/**
* 根据整型日期生成Calendar
*
* @param date
* @return
*/
public static Calendar newCalendar(int date) {
int year = date / 10000;
int month = (date %10000) / 100;
int day = date % 100;
Calendar ret = Calendar.getInstance();
ret.set(year, month - 1, day);
return ret;
}
public static void main(String[] args) {
//获取当前年月的第一天日期
System.out.println(Test20170519.format(Test20170519.getFistDayOfNow(Test20170519.getCurrentDate())));
//获取当前年月日期
System.out.println(Test20170519.format(Test20170519.getCurrentDate()));
//获取当前年月日时分秒日期
System.out.println(Test20170519.Dateformat(new Date()));
//时间格式化
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//调用时间底层方法(获取当前日期)
System.out.println(formatter.format(new Date()));
//去掉非0-9的其他字符
String reg="[^0-9]";
//转化为integer类型
Integer startDate=Integer.valueOf(Test20170519.format(Test20170519.getFistDayOfNow(Test20170519.getCurrentDate())).replaceAll(reg, ""));
Integer endDate=Integer.valueOf(Test20170519.format(Test20170519.getCurrentDate()).replaceAll(reg, ""));
//计算两个整型日期之间的天数
System.out.println(Test20170519.daysBetweenDate(startDate, endDate));
}
}