формат даты с Adobe Flex - PullRequest
       13

формат даты с Adobe Flex

3 голосов
/ 04 марта 2010

У меня есть дата, и я хотел бы отформатировать дату следующим образом: ГГГГММДД ЧЧММСС так что на сегодня это 20100304 173000

Но когда я делаю это:

var todayStr:String = today.getFullYear()+today.getMonth()+today.getDay()+today.getHours()+today.getMinutes();

проблема в том, что за март getMonth () отправил "3", и я хотел бы "03". Та же самая проблема с днем.

Как я могу это сделать?

Спасибо.

Ответы [ 3 ]

13 голосов
/ 04 марта 2010

Вы можете использовать DateFormatter. Посмотрите на это: Dateformatter @ adobe

var formatter : DateFormatter;
formatter = new DateFormatter();
formatter.formatString = "YYYYMMDD HHNNSS";
formatter.format(dateInstance);

остерегайтесь 'N', используемого для минут

1 голос
/ 04 марта 2010

Попробуйте простую функцию, такую ​​как:

private function formatTwoDigits(val:Number) : String {
  var retVal:String = "";
  retVal = (val > 9) ? val.toString() : "0" + val.toString();
  return retVal;
}

Тогда используйте как:

var month:String = formatTwoDigits(today.getMonth()+1); // add 1 because months are zero-based
0 голосов
/ 04 марта 2010

Хотя, возможно, есть более простой способ сделать это более процедурно.

var todayStr:String;

todayStr+=today.getFullYear();

if(today.getMonth()<10){
  todayStr+="0";
  todayStr+=today.getMonth();
}else{
  todayStr+=today.getMonth();
}

и т.д.

...