Q; Определить дату в формате ГГГГ-ММ-ДД ЧЧ: ММ: СС - PullRequest
0 голосов
/ 08 февраля 2010

Мне нужно иметь возможность вычитать 2 часа, 8 часов, 1 день и 1 неделю из текущей даты.

Затем преобразуйте в формат гггг-мм-дд чч: мм: сс.

Пока что я потерпел неудачу.

Каков правильный способ сделать это в ActionScript?

Ответы [ 3 ]

1 голос
/ 08 февраля 2010

Здесь есть несколько вариантов, но я думаю, что самое простое решение в вашем случае - это работа с миллисекундами. Вы можете использовать + = и - =, чтобы изменить текущее значение даты в миллисекундах. Самая хитрая вещь - это преобразование ваших значений в миллисекунды. Вот несколько примеров:

var myDate:Date; //assuming this is a actual date value.

//subtract 2 hrs
var twoHoursInMilliseconds:int = 2 * 60 * 60 * 1000; //2 hours * 60 minutes * 60 seconds * 1000 milliseconds (in a second)
myDate.milliseconds -= twoHoursInMilliseconds;

//subtract 1 day
var oneDayInMilliseconds:int = 1 *24 * 60 * 60 * 1000;
myDate.milliseconds -= oneDayInMilliseconds;

Для форматирования вам понадобятся следующие методы:

trace(d.getFullYear(), d.getMonth(), d.getDate(), d.getHours(), d.getMinutes(), d.getSeconds());

Надеюсь, это направит вас в правильном направлении,

Счастливого кодирования!

Редактировать: Обновлен код для исправления ошибки.

0 голосов
/ 13 февраля 2010

Просто измените значения UTC даты / часа.

var d:Date = new Date();
d.dateUTC -= 1; //subtract one day
d.hoursUTC -= 1; //subtract one hour

и затем проследить вывод с помощью оператора трассировки Тайлера.

trace(d.getFullYear(), d.getMonth(), d.getDate(), d.getHours(), d.getMinutes(), d.getSeconds());

Для получения дополнительной информации о классе Дата, проверьте http://help.adobe.com/en_US/AS3LCR/Flash_10.0/Date.html

0 голосов
/ 08 февраля 2010

Я согласен с Тайлером за его подход к работе с датой в виде миллисекунд. Для конвертации вы также можете использовать DateFormatter, как показано ниже.

var dateFormatter: DateFormatter = new DateFormatter (); dateFormatter.formatString = 'ггг-мм-дд чч: мм: сс'; var formattedDate: String = dateFormatter.format (d); следа (formattedDate);

Пожелания, Ashine.

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