2011-11-27 218 views
2

可能重复:
String to Date in Different Format in Java格式字符串日期

我想字符串转换为日期在不同的格式。

String d = "07:33:01 PM 26/11/2011";

哪能它隐蔽于26/11-19h30

+3

使用'SimpleDateFormat'。搜索这个论坛,你会发现很多例子,事实上,你可以从右侧的“相关”链接开始,看看这个页面的下半部分。 –

回答

2
DateFormat formatter = new SimpleDateFormat("MM/dd-H\hm"); 
date = (Date)formatter.parse(d); 

您将需要进口的java.util。*和进口的java.text。*

+0

@扎卡里亚:我没有偷你的答案,你甚至可能会注意到我在你之前发布了我的答案。 – dotancohen

+0

您在发布一些代码后编辑了你的分钟。无论如何,我们正处于一个面向社区的网站:您可以编辑帖子或发表评论来改进它们。没有共同的目标。 – Zakaria

+0

但我的首先。说真的,虽然这样的问题在这里被问及过很多次,但没有原始海报显示他的实际问题的另一个类似问题实际上并不比混乱。 –

2
String d = "07:33:01 PM 26/11/2011"; 
Date date = new SimpleDateFormat("d/MM-HH\hmm", Locale.ENGLISH).parse(d); 
+0

我试过了。但它也不能。
这是我的问题:
java.text.ParseException:无法解析的日期: “上午09点33分01秒26/11/2011” \t在java.text.DateFormat.parse(DateFormat.java:357) – user1024858

+1

你能发布你用来打印答案的程序吗?你得到了什么错误? – Zakaria

+0

非常感谢Zakaria。我已经做好了。 祝你好运! – user1024858

1
String d = "07:33:01 PM 26/11/2011"; 

    SimpleDateFormat formatterIn = new SimpleDateFormat("hh:mm:ss a dd/MM/yyyy"); 
    SimpleDateFormat formatterOut = new SimpleDateFormat("dd/MM-HH'h'mm"); 
    Date date = formatterIn.parse(d); 

    System.out.println(formatterOut.format(date)); 

将其转换为26/11-19h33,你要舍入到26/11-19h30?

+0

没问题。 非常感谢。 Goog luck! – user1024858