从mm / dd / yyyy更改日期格式

时间:2015-04-27 05:01:04

标签: java date-format simpledateformat

我需要将日期格式从2015-04-08更改为08-APR-2015。 它来自grails gsp前端。 在调用oracle包之前,我需要更改java中的格式。 怎么做。

3 个答案:

答案 0 :(得分:2)

我在更改日期格式时使用SimpleDateFormat。试试这个:

String OLD_FORMAT = "yyyy-MM-dd";
String NEW_FORMAT = "dd-MMM-yyyy";

String oldDateString = "2015-04-08";
String newDateString;

SimpleDateFormat sdf = new SimpleDateFormat(OLD_FORMAT);
Date d = sdf.parse(oldDateString);
sdf.applyPattern(NEW_FORMAT);
newDateString = sdf.format(d);

答案 1 :(得分:1)

您在答案中提到了Java但是您标记了JavaScript我已经编辑了您的问题以显示Java标记。这是一个JavaScript源。

假设输入 str

str.split('-').forEach(function(a,i,b){
    result += i===0?(b[2]+'-'):i===1?(((new Date(str)).toUTCString()).split(' ')[2]+'-').toUpperCase():a[0];
});

答案 2 :(得分:1)

好的我已经看到并回答但仍想添加一个。我不确定您是否需要JS或Java解决方案。你可以使用Javascript或Java。以下是两种方式:
的Javascript

var c = new Date('2015-04-08');
locale = "en-us" 
function formatDate(d)
 {
    var month = d.toLocaleString(locale, { month: "long" });
    var day = d.getDate();
    day = day + "";
    if (day.length == 1)
     {
     day = "0" + day;
      }
      return day + '-' + month +'-' + d.getFullYear();
  }

如果您在Java中需要相同的内容,请执行以下操作。
的Java

String myDateString = "2015-04-08";
String reqDateString = new SimpleDateFormat("dd-MMM-yyyy").format(myDateString);

如果在Java中完成看起来更简单可靠,那就更好了。