Java中的Calendar 类和SimpleDateFormat 类

1.Calendar 类:
import java.util.Calendar;       
        Calendar cal = Calendar.getInstance();
        int day = cal.get(Calendar.DATE);//当前日期
        int month = cal.get(Calendar.MONTH)+1;//月份   注:在格里高利历和罗马儒略历中一年中的第一个月是 JANUARY,它为 0;最后一个月取决于一年中的月份数。
        int year = cal.get(Calendar.YEAR);//年份
        int dow = cal.get(Calendar.DAY_OF_WEEK);//一周的第几天
        int dom = cal.get(Calendar.DAY_OF_MONTH);//一月中的第几天
        int doy = cal.get(Calendar.DAY_OF_YEAR);//一年的第几天
        
        System.out.println("当期时间: " + cal.getTime());
        System.out.println("日期: " + day);
        System.out.println("月份: " + month);
        System.out.println("年份: " + year);
        System.out.println("一周的第几天: " + dow);  // 星期日为一周的第一天输出为1,星期一输出为2,以此类推
        System.out.println("一月中的第几天: " + dom);
        System.out.println("一年的第几天: " + doy);

输出:
当期时间: Wed Nov 01 17:20:02 CST 2017
日期: 1
月份: 11
年份: 2017
一周的第几天: 4
一月中的第几天: 1
一年的第几天: 305

2.SimpleDateFormat 类:

  G 年代标志符
  y 年
  M 月
  d 日
  h 时 在上午或下午 (1~12)
  H 时 在一天中 (0~23)
  m 分
  s 秒
  S 毫秒
  E 星期
  D 一年中的第几天
  F 一月中第几个星期几
  w 一年中第几个星期
  W 一月中第几个星期
  a 上午 / 下午 标记符
  k 时 在一天中 (1~24)
  K 时 在上午或下午 (0~11)
  z 时区


import java.util.Date;
import java.text.SimpleDateFormat;

    Date date=new Date();//获取当前时间
    SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss GEa");//格式化
    SimpleDateFormat sdf1=new SimpleDateFormat("一年中的第 D 天 一年中第w个星期 一月中第W个星期 在一天中k时z时区");

    System.out.println(sdf.format(date));  //输出:2017-11-01 17:18:30 公元星期三下午
    System.out.println(sdf1.format(date));  //一年中的第 305 天 一年中第44个星期 一月中第1个星期 在一天中17时 CST时区
    System.out.println(date);  //Wed Nov 01 17:18:30 CST 2017



原文地址:https://www.cnblogs.com/Downtime/p/7767539.html