Java从时间戳中获取数小时

时间:2013-09-04 21:10:14

标签: java

我正在从文件中读取时间戳,并使用SimpleDataFormat将其转换为从SQL接收的时间戳格式,出于某种原因,我必须比较两个邮票的分钟和秒。是否有优化从我使用SimpleDateFormat转换的图章中提取小时(不解析它)

3 个答案:

答案 0 :(得分:12)

您需要使用SimpleDateFormat来解析给定日期以确定您需要的格式。

Timestamp stamp = new Timestamp(System.currentTimeMillis());
Date date = new Date(stamp.getTime());
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy h:mm:ss a");
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
String formattedDate = sdf.format(date);

URL

了解SimpleDateFormat的详情

干杯!!

答案 1 :(得分:1)

快速简便的方法,如果你有一个固定格式的日期字符串:

String str = "2005-10-30 T 10:46 UTC";
String hours = str.substring(13, 15);
String minutes = str.substring(16, 18);

答案 2 :(得分:1)

SimpleDateFormat sdf=new SimpleDateFormat("EEE MMM d HH:mm:ss zzz yyyy");
Date date = null;
try {
    date = sdf.parse("Wed Sep 4 13:41:12 UTC 2013");
} catch (ParseException ex) {
    // ...
    System.exit(-1);
}
Calendar cal = Calendar.getInstance();
cal.setTimeZone(TimeZone.getTimeZone("UTC"));
cal.setTime(date);
int hour = cal.get(Calendar.HOUR_OF_DAY);
int minute = cal.get(Calendar.MINUTE);

(当然你必须更改日期格式以匹配你的字符串,我只是从互联网中随机添加一个)