我想要这种格式6 Dec 2012 12:10
String time = "2012-12-08 13:39:57 +0000 ";
DateFormat sdf = new SimpleDateFormat("hh:mm:ss");
Date date = sdf.parse(time);
System.out.println("Time: " + date);
答案 0 :(得分:8)
您需要首先解析您的日期字符串(使用DateFormat#parse()
方法),以使用与格式匹配的格式获取 Date
对象date string
。
然后格式化使用SimpleDateFormat
中所需格式的Date对象(使用DateFormat#format()
方法)来获取字符串。
String time = "2012-12-08 13:39:57 +0000";
Date date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss Z").parse(time);
String str = new SimpleDateFormat("dd MMM yyyy HH:mm:ss").format(date);
System.out.println(str);
输出: -
08 Dec 2012 19:09:57
第一种格式的 Z
用于RFC 822 TimeZone以匹配日期字符串中的+0000
。有关日期格式中使用的各种其他选项,请参阅SimpleDateFormat
。
答案 1 :(得分:4)
将SimpleDateFormat
更改为:
String time = "2012-12-08 13:39:57 +0000";
DateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss Z");
Date date = sdf.parse(time);
DateFormat sdf = new SimpleDateFormat("dd MMM yyyy HH:mm:ss");
String formatedTime = sdf.format(date);
System.out.println("Time: " + formatedTime);
答案 2 :(得分:3)
看看SimpleDateFormat。代码如下:
SimpleDateFormat fromUser = new SimpleDateFormat("dd/MM/yyyy");
SimpleDateFormat myFormat = new SimpleDateFormat("yyyy-MM-dd");
String reformattedStr = myFormat.format(fromUser.parse(inputString));
答案 3 :(得分:1)
SimpleDateFormat simpleDateFormat=new SimpleDateFormat("dd-MM-yyyy");
Date date=simpleDateFormat.parse("23-09-2008");
答案 4 :(得分:1)
您可以使用SimpleDateFormat类来执行此操作! 这样:
DateFormat mydate1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date1 = mydate1.parse(time);