JSTL Округление числа в меньшую сторону

Это может быть глупый вопрос, но скажем, у меня есть переменная секундына моей странице JSP и его значение равно 779. Теперь я хочу преобразовать его в минуты и секунды, выполнив следующие действия:

    <c:set var="${seconds / 60}" value="min"/>
    <c:set var="${seconds mod 60}" value="sec">

Таким образом, я получаю min = 12,983333 и sec = 59,0.

Теперь я хочу объединить их и отобразить результат как 12:59. Проблема, с которой я столкнулся, заключается в том, что minпродолжает округляться до 13. Я пробовал много вещей, например:

    <fmt:parseNumber var="minutes" integerOnly="true" type="number" value="${min}" />

    <fmt:formatNumber type="number" pattern="###" value="${min}" var="minutes" />

    fn:substringBefore(min, '.')

    maxFractionDigits="0"

    // and so on...

Но все они последовательно возвращают 13. Я немного не в курсе на данный момент. Но может я что-то упустил. Я надеюсь, что у кого-то здесь есть идея или намек на то, что может быть не так.

-edit

Приведенный ниже код в конце концов заработал. Я понятия не имею, что было не так, так как теперь он также работает с «/». Может быть, какая-то небольшая ошибка в другом месте. Тем не менее, большое спасибо за ваше время :) Престижность!

    <c:set var="min" value="${fn:substringBefore((seconds div 60), '.')}"/>  
    <fmt:formatNumber var="sec" pattern="##" value="${seconds mod 60)}"/>   
5
задан Leigh 18 June 2012 в 03:02
поделиться