日期从一种格式更改为另一种格式

时间:2017-12-03 05:22:36

标签: java

我试图将日期从一种格式解析为另一种格式,但是获得了解析异常。请帮我解决这个问题。

String Orgdate= "2016-11-14T11:12:13";
java.util.Date tardate = null;


SimpleDateFormat dateFormat2 = new SimpleDateFormat("dd/mm/yyyy HH24:MI:SS");//Exception is in this line.
    try {
        targetdateformat  = dateFormat2.parse(Orgdate);
    } catch (ParseException e) {
        e.printStackTrace();
    }

以上代码给我的日期但格式不同,我正在寻找下面提到的日期。

('14/11/2016 11:12:13')

时间格式是24小时。

3 个答案:

答案 0 :(得分:0)

为什么不只是做一个简单的硬编码来获得你想要的格式。例如......

            String date = "2016-11-14T11:12:13";

            String newDate = date.charAt(8) + "" + date.charAt(9) + "/" +
                             date.charAt(5) + "" + date.charAt(6) + "/" +
                             date.substring(0, 4) + " " +  date.substring(11, 19);

            System.out.println(newDate);

答案 1 :(得分:0)

您需要Dateformat然后 String Orgdate= "2016-11-14T11:12:13"; java.util.Date tardate = null; SimpleDateFormat dateFormat2 = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss"); try { tardate = dateFormat2.parse(Orgdate); System.out.println(tardate); // Mon Nov 14 11:12:13 UTC 2016 } catch (ParseException e) { e.printStackTrace(); } String formatted = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss").format(tardate); System.out.println(formatted); 14/11/2016 11:12:13 日期字符串才能将其转换为其他格式

Java8

如果您使用LocalDateTime dateTime = LocalDateTime.parse("2016-11-14T11:12:13", DateTimeFormatter.ISO_LOCAL_DATE_TIME); String formattedDate = dateTime.format(DateTimeFormatter.ofPattern("dd/MM/yyyy HH:mm:ss")); // 14/11/2016 11:12:13 ,可以尝试以下

@angular/http

答案 2 :(得分:0)

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
        Date a = sdf.parse("2016-08-12T08:29:47");
        sdf.applyPattern("dd/MM/yyyy HH:mm:ss");
        System.out.println(sdf.toPattern()); // to see if new pattern applied 
        System.out.println(sdf.format(a)); // get output in desired format