我在以下格式的字符串中有时间。
"MM/dd/yyyy hh:mm AM/PM"
我需要以24:00
小时格式获取时间
前任:
String str = "04/30/2013 10:20PM"
我需要时间22:20
我在以下格式的字符串中有时间。
"MM/dd/yyyy hh:mm AM/PM"
我需要以24:00
小时格式获取时间
前任:
String str = "04/30/2013 10:20PM"
我需要时间22:20
您必须使用 SimpleDateFormat 进行任何类型的日期时间转换。
你可以试试这个:
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateConversion {
public void convertDate() {
try{
SimpleDateFormat df = new SimpleDateFormat("HH:mm");
SimpleDateFormat pf = new SimpleDateFormat("MM/dd/yyyy hh:mm a");
Date date = pf.parse("10:20PM");
System.out.println(pf.format(date) + " = " + df.format(date));
}catch(Exception e){
// Do your exception handling over here.
}
}
}
我猜这将解决你的问题。
这将给出一个输出:22:20
如果有任何问题,请告诉我。
使用SimpleDateFormat将字符串转换为 Date 对象,然后对其进行格式化。
String str = "04/30/2013 10:20PM";
Date date = new SimpleDateFormat("MM/dd/yyyy hh:mma").parse(str);
String result = new SimpleDateFormat("HH:mm").format(date);
有关类似问题,请参见此处。
使用“HH”而不是“hh”例如:
Date dNow = new Date( );
SimpleDateFormat ft = new SimpleDateFormat ("MM/dd/yyyy HH:mm ");
System.out.println("Current Date: " + ft.format(dNow));
在此链接中,特别是在“简单 DateFormat 格式代码:”中,您可以找到:
Character Description Example
h Hour in A.M./P.M. (1~12) 12
H Hour in day (0~23) 22