处理不同的字符串日期格式

时间:2013-01-22 15:28:15

标签: java

在java中,我有一个日期为dd-mm-yyyy格式的字符串:

String value = "31-01-1989";

现在,我希望另一个变量中的值为ddmmyyyy格式:

String value = "31011989";

怎么做?

4 个答案:

答案 0 :(得分:6)

在这种情况下,您只需删除破折号

即可
value = value.replace("-", "");

value = value.replaceAll("-", "");

但根据我的测试,第一个版本更快一点。所以我个人更喜欢只在第一个参数是正则表达式时才使用replaceAll。

请注意,尽管名称存在混淆,但String.replace替换了与第一个arg匹配的所有子字符串,就像String.replaceAll一样。主要区别在于String.replace将第一个arg视为字符串文字,String.replaceAll将其用作正则表达式。

答案 1 :(得分:4)

简单的解决方案:

String value1 = "31-01-1989";
String value2 = value1.replace("-", "");

答案 2 :(得分:2)

查看SimpleDateFormat的一般解决方案。在第一个日期写下SimpleDateFormatparse,在另一个日期使用format来获得预期的输出。

答案 3 :(得分:2)

您可以使用String.replace(Charseq, Charseq)删除分隔符。

String value = "31-01-1989";
String value2 = value.replace("-", "");
System.out.println(value2);