当前位置: 代码迷 >> 综合 >> Java开发中遇到12小时或者24小时制
  详细解决方案

Java开发中遇到12小时或者24小时制

热度:47   发布时间:2024-02-25 10:24:41.0

SimpleDateFormat转换时间-12或者24时间格式:

so easy:

 

在使用SimpleDateFormat时格式化时间的

yyyy.MM.dd 为年月日而如果希望格式化时间为12小时制的,

则使用hh:mm:ss 如果希望格式化时间为24小时制的,则使用HH:mm:ss

 

Date d = new Date();SimpleDateFormat ss = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");//12小时制System.out.println(ss.format(d));Date date = new Date();SimpleDateFormat sdformat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//24小时制String LgTime = sdformat.format(date);System.out.println(LgTime);结果为2008-05-28 01:32:54 2008-05-28 13:32:54 

  Date类,已经很少用了。更多使用的是Calendar  
  Calendar
    date    =    Calendar.getInstance();   
  date.get(Calendar.HOUR_OF_DAY    );//得到24小时机制的   
  date.get(Calendar.HOUR);//    得到12小时机制的 

 

package test;import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;public class Main {/*** @param args* @throws IOException */public static void main(String[] args) throws IOException {// TODO Auto-generated method stubCalendar c=Calendar.getInstance();long milliseconds=c.getTimeInMillis();System.out.println("当前时间毫秒值:"+milliseconds);//当前时间SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); System.out.println("直接格式化毫秒值输出:"+sdf.format(milliseconds));//2011-08-20 04:27:16Date d=new Date(milliseconds);//转换成Date对象System.out.println("Date对象输出时间:"+sdf.format(d));Calendar c2=Calendar.getInstance();System.out.println("Calendar设置前毫秒值:"+c2.getTimeInMillis());c2.setTime(d);//通过setTime方法转换回Calendar对象System.out.println("Calendar设置后毫秒值:"+c2.getTimeInMillis());}}