- package com.hanchao.web;
- import java.text.DateFormat;
- import java.text.SimpleDateFormat;
- import java.util.Calendar;
- import java.util.Date;
- /**
- * Calendar学习
- * @author hanchao
- * 2013-02-26
- */
- public class Test {
- public static void main(String[] args) {
- /*********
- * 日历的学习
- */
- //1.创建一个日历对象
- Calendar calendar = Calendar.getInstance();
- //2.用当前的时间初始化日历对象
- calendar.setTime(new Date());
- //获得年、月、日、星期、小时、分钟、秒
- String year = String.valueOf(calendar.get(Calendar.YEAR));
- String month = String.valueOf(calendar.get(Calendar.MONTH) + 1);
- String day = String.valueOf(calendar.get(Calendar.DAY_OF_MONTH));
- String week = String.valueOf(calendar.get(Calendar.DAY_OF_WEEK) -1);
- int hour = calendar.get(Calendar.HOUR_OF_DAY);
- int minute = calendar.get(Calendar.MINUTE);
- int second = calendar.get(Calendar.SECOND);
- System.out.println("Year:" + year + "\tmonth:" + month + "\tday:" + day +
- "\nweek:" + week + "\thour:" + hour + "\tminute:" + minute +
- "\nsecond:" + second);
- //3.将日历翻到1931年9月18日,8表示9月
- calendar.set(1931, 8,18);
- //返回从格林威治标准时间 1970 年 1 月 1 日的 00:00:00.000到Calendar对象表示的时间之间的毫秒数
- long timeOne = calendar.getTimeInMillis();
- //将日历翻到1945年8月15日,7表示8月
- calendar.set(1945, 7, 15);
- long timeTwo = calendar.getTimeInMillis();
- long 相隔天数 = (timeTwo - timeOne ) / (1000 * 60 * 60 * 24 );
- System.out.println("1945年8月15日和1931年9月18日相隔" + 相隔天数 + "天");
- //4.新创建一个日历对象
- Calendar calendar2 = Calendar.getInstance();
- Date newTime = calendar2.getTime();
- Long newTimeLong = newTime.getTime(); //返回自1970年1月1日午夜(通用时间)以来的毫秒数
- System.out.println("============" + newTime);
- System.out.println("-------------" + newTimeLong);
- Date enddtdate = new Date(); //当前日期时间
- Calendar c = Calendar.getInstance(); //创建一个日历对象
- c.setTime(enddtdate); //初始化日历对象
- System.out.println("=========当前时间:" + c.getTime());
- c.add(Calendar.MONTH, -3); //向前倒退三个月
- Date startTimeDate = c.getTime();
- System.out.println("=========三个月前的时间:" + startTimeDate);
- c.setTime(enddtdate);
- System.out.println("-------当前时间:" + c.getTime());
- c.add(Calendar.DAY_OF_MONTH, 1); //向后一天
- Date endTimeDate = c.getTime();
- System.out.println("------一天后时间:" + endTimeDate);
- DateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
- String startTime = dateFormat.format(startTimeDate);
- String endTime = dateFormat.format(endTimeDate);
- System.out.println("开始时间:" + startTime);
- System.out.println("结束时间:" + endTime);
- }
- }
- public class test {
- public static void main(String[] args) {
- /**
- * 2013-03-15-hanliwei-just for test
- * dateFlag 0:不区分到期日期;1:7天内到期;2:30天内到期;3:60天内到期;4:90天内到期
- */
- String dateFlag = "6";
- Date nowDate = new Date();
- SimpleDateFormat simpleDateFormate = new SimpleDateFormat("yyyy-MM-dd");
- String startTime = simpleDateFormate.format(nowDate);
- System.out.println("当前时间:" + startTime);
- String endTime = null;
- //创建一个日历对象
- Calendar calendar = Calendar.getInstance();
- //初始化日历对象
- calendar.setTime(nowDate);
- if("1".equals(dateFlag)) {
- //7天内到期
- calendar.add(Calendar.DAY_OF_MONTH, 7);
- Date endDate = calendar.getTime();
- endTime = simpleDateFormate.format(endDate);
- System.out.println("7天后的时间:" + endTime);
- } else if("2".equals(dateFlag)) {
- //30天内到期
- calendar.add(Calendar.DAY_OF_MONTH, 30);
- Date endDate = calendar.getTime();
- endTime = simpleDateFormate.format(endDate);
- System.out.println("30天后的时间:" + endTime);
- } else if("3".equals(dateFlag)) {
- //60天内到期
- calendar.add(Calendar.DAY_OF_MONTH, 60);
- Date endDate = calendar.getTime();
- endTime = simpleDateFormate.format(endDate);
- System.out.println("60天后的时间:" + endTime);
- } else if("4".equals(dateFlag)) {
- //90天到期
- calendar.add(Calendar.DAY_OF_MONTH, 90);
- Date endDate = calendar.getTime();
- endTime = simpleDateFormate.format(endDate);
- System.out.println("90天后的时间:" + endTime);
- } else if("5".equals(dateFlag)) {
- //一个月到期
- calendar.add(Calendar.MONTH, 1);
- Date endDate = calendar.getTime();
- endTime = simpleDateFormate.format(endDate);
- System.out.println("一个后的时间:" + endTime);
- } else if("6".equals(dateFlag)) {
- //2个月的到期的
- calendar.add(Calendar.MONTH, 2);
- Date endDate = calendar.getTime();
- endTime = simpleDateFormate.format(endDate);
- System.out.println("2个后的时间:" + endTime);
- }
- }
- }