Calendar获取时间及格式化

		/**
		 * Date中的这些函数的 API 不易于实现国际化。从 JDK 1.1 开始,应该使用 Calendar 类实现日期和时间字段之间转换,
		 * 使用 DateFormat 类来格式化和解析日期字符串。Date 中的相应方法已废弃。
		 * 
		 * Calendar是一个抽象类,所以它不能实例化,Calendar.getInstance()实际上是对它的
		 *  子类GregorianCalendar进行了实例化并赋值。
		 *     public static synchronized Calendar getInstance() {
		 * 	        return new GregorianCalendar();
		 *     }
	         *      public GregorianCalendar(TimeZone timezone, Locale locale) {
		 *  	     super(timezone, locale);
		 *  	     setTimeInMillis(System.currentTimeMillis());
		 *  	    }
		 *  如果没有对Calendar设置时间,将会默认是系统时间System.currentTimeMillis(),默认当前时区,默认当前语言
		 **/
        Calendar mCalendar = Calendar.getInstance();
        TimeZone mTimeZone = mCalendar.getTimeZone();
        long mTimeMillis = mCalendar.getTimeInMillis();
        String mZoneName = mTimeZone.getDisplayName();
        
        android.util.Log.v(TAG,"mZoneName:"+mZoneName);
        android.util.Log.v(TAG,"mTimeMillis:"+mTimeMillis);

        int year = mCalendar.get(Calendar.YEAR);
        int month = mCalendar.get(Calendar.MONTH);   //返回值:0~11
        int day = mCalendar.get(Calendar.DAY_OF_MONTH);
        int hour = mCalendar.get(Calendar.HOUR);  //12小时制,返回值:0~11,0是12点,所以效果如00:01 AM;00:01 PM
        int minute = mCalendar.get(Calendar.MINUTE);
        int second = mCalendar.get(Calendar.SECOND);
        int millisecond = mCalendar.get(Calendar.MILLISECOND);
        int am_pm = mCalendar.get(Calendar.AM_PM); //返回值0,1。0为AM,1为PM
        int hour_of_day = mCalendar.get(Calendar.HOUR_OF_DAY); //24小时制,返回值1~24    

        //格式化时间,yyyy,MM,dd,HH,mm,ss位置可以随意搭配。
        SimpleDateFormat sdf = new SimpleDateFormat();
        sdf.applyPattern("yyyy-MM-dd HH:mm:ss"); //设置显示时间格式
        String formatDatesd = sdf.format(mCalendar.getTime());
        android.util.Log.v(TAG,"formatDatesd:"+formatDatesd);
        //获取英文的月份
        DateFormatSymbols mDateSymbols = new DateFormatSymbols();
        String []mMonths = mDateSymbols.getMonths();
        android.util.Log.v(TAG,"mMonths:"+mMonths[month]);

        android.util.Log.v(TAG,"year:"+year);
        android.util.Log.v(TAG,"month:"+month);
        android.util.Log.v(TAG,"day:"+day);
        android.util.Log.v(TAG,"hour:"+hour);
        android.util.Log.v(TAG,"minute:"+minute);
        android.util.Log.v(TAG,"second:"+second);
        android.util.Log.v(TAG,"millisecond:"+millisecond);
        android.util.Log.v(TAG,"am_pm:"+am_pm);
        android.util.Log.v(TAG,"hour_of_day:"+hour_of_day);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值