将时间转换为24小时格式

时间:2014-11-26 13:10:12

标签: java time

我有一些String格式的时间值(例如12:45 AM7:00 PM)。 我想知道如何将其转换为24小时格式(例如12:4519:00)。

输出应该是长格式吗?

3 个答案:

答案 0 :(得分:3)

请查看at this page。 它有如何来回转换的例子。

这是12小时到24小时的转换。

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

String input = "2014-12-20 10:22:12 PM";
//Format of the date defined in the input String
DateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss aa");
//Desired format: 24 hour format: Change the pattern as per the need
DateFormat outputformat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = null;
String output = null;
try{
   //Converting the input String to Date
   date= df.parse(input);
   //Changing the format of date and storing it in String
   output = outputformat.format(date);
   //Displaying the date
   System.out.println(output);
} catch (ParseException pe) {
   pe.printStackTrace();
}

答案 1 :(得分:2)

String dateStr = "12:45 AM";
DateFormat inputFormat = new SimpleDateFormat( "hh:mm aa" );
DateFormat outputFormat = new SimpleDateFormat( "HH:mm" );
Date date = null;
try{
    date = inputFormat.parse( dateStr );
}
catch ( ParseException e ){
   e.printStackTrace();
}
if( date != null ){
    String formattedDate = outputFormat.format( date );
}

答案 2 :(得分:1)

我不确定我的问题是否正确,但不应该做以下工作?

Date date=new Date("01/01/14 " + myTimeString);    // Example: 8:22:09 PM 
System.out.println("Formattet ="+new SimpleDateFormat("HH:mm").format(date));