Как проанализировать дату в формате ISO во Flex (AS3)? - PullRequest
9 голосов
/ 27 марта 2009

Как я могу разобрать строку даты ISO в объект даты в Flex (AS3)?

, например
2009-12-08T04: 23: 23Z
2009-12-08T04: 23: 23.342-04: 00
и т.д ...

Ответы [ 3 ]

17 голосов
/ 27 марта 2009
import com.adobe.utils.DateUtil;

var dateString:String = "2009-03-27T16:28:22.540-04:00";
var d:Date = DateUtil.parseW3CDTF(dateString);
trace(d);
var s:String = DateUtil.toW3CDTF(d);
trace(s);
[trace] Fri Mar 27 16:28:22 GMT-0400 2009
[trace] 2009-03-27T20:28:22-00:00

Получается DateUtil обрабатывает все в W3C Дата и время спецификации. Даты AS3 не сохраняют миллисекунды, но они будут просто удалены, если доступны.

Обратите внимание, что выход W3C конвертируется в UTC (или по Гринвичу, или по времени Зулу).

1 голос
/ 01 ноября 2012

Пример функции для преобразования ISO в формат даты

    public function isoToDate(value:String):Date 
    {
        var dateStr:String = value;
        dateStr = dateStr.replace(/\-/g, "/");
        dateStr = dateStr.replace("T", " ");
        dateStr = dateStr.replace("Z", " GMT-0000");

        return new Date(Date.parse(dateStr));
    }
0 голосов
/ 27 марта 2009

Вот реализация: http://blog.flexexamples.com/2008/02/02/parsing-iso-dates-with-flex-and-actionscript/

(Извините, ff просто не показывает кнопку связывания, и я слишком ленив, чтобы сделать это сам.)

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