直接上源代码,底下俩段代码互不影响
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.ZoneId;
import java.util.Calendar;
import java.util.Date;
/**
* Java根据指定日期的到当天的开始时间和结束时间,
* Java得到当前日期的开始时间和结束时间
*/
public class test {
public static void main(String[] args) {
try {
//得到当前日期的开始时间和结束时间
LocalDateTime today_start = LocalDateTime.of(LocalDate.now(), LocalTime.MIN);//当天零点
LocalDateTime today_end = LocalDateTime.of(LocalDate.now(), LocalTime.MAX);//当天零点
Date date1 = Date.from(today_start.atZone(ZoneId.systemDefault()).toInstant());//转Date
Date date2 = Date.from(today_end.atZone(ZoneId.systemDefault()).toInstant());//转Date
System.out.println("得到当前日期的开始时间:\t" + date1);
System.out.println("得到当前日期的结束时间:\t" + date2 + "\n");
//上下俩段代码互不影响
//得到指定日期得到当天的开始时间和结束时间
SimpleDateFormat dateformat = new SimpleDateFormat("yyyy-MM-dd");
Date date = dateformat.parse("2016-6-19");//修改指定这个日期就行了
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.set(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
calendar.set(Calendar.MILLISECOND, 0);
Date dete1 = new Date(calendar.getTimeInMillis());//得到指定日期的开始时间
calendar.set(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH), 23, 59, 59);
calendar.set(Calendar.MILLISECOND, 999);
Date dete2 = new Date(calendar.getTimeInMillis());//得到指定日期的结束时间
System.out.println("得到指定日期的开始时间:\t" + dete1);
System.out.println("得到指定日期的结束时间:\t" + dete2);
} catch (Exception e) {
}
}
}
输出: