Форматирование даты с помощью fmt: formatDate - PullRequest
4 голосов
/ 13 декабря 2010

Я пытаюсь отформатировать дату, используя fmt: formatDate.

 <c:forEach items="${list}" var="item">
     <tr>
       <!--some other columns-->
       <td align="left">
          <fmt:parseDate value="${item.date}" type="both" var="date"/>
          <fmt:formatDate value="${date}" type="both" pattern="dd/MM/yyyy H:m"/>
       </td> 
       <!--some other columns-->
      </tr>
  </c:forEach>

, но получаю следующее исключение:

java.text.ParseException: Unparseable date: "2010-12-1216:00:00 "

Все, что я хочу, это показать переменную date следующим образом: 12.12.2010 16:00.Как мне этого добиться?

Заранее спасибо.

1 Ответ

10 голосов
/ 13 декабря 2010

Вам необходимо указать шаблон разбора.

<fmt:parseDate value="${item.date}" pattern="yyyy-MM-dd HH:mm:ss" var="date"/>
<fmt:formatDate value="${date}" pattern="dd/MM/yyyy HH:mm" />

Однако обычная практика - хранить даты как java.util.Date, а не как java.lang.String. Тогда вы можете просто сделать:

<fmt:formatDate value="${item.date}" pattern="dd/MM/yyyy HH:mm" />

Используйте как можно больше правильного типа для значения. С ним станет легче обращаться.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...