Я получаю Дату своей базы данных, и я должен показать ее Строкой. Таким образом в Flex я делаю это:
public static function dateToString(cDate:Date):String {
return cDate.date.toString()+"."+
cDate.month.toString()+"."+
cDate.fullYear.toString()+" "+
cDate.hours.toString()+":"+
cDate.minutes.toString()+":"+
cDate.seconds.toString();
}
Но я получаю, например, результат:
13.07.2010 0:0:15
Как я могу заполнить день, месяц, часы, минуты, секунды с заполненным 0?
И, я возвращаюсь от Строки до настоящего времени с:
DateField.stringToDate(myTextInput.text, "DD.MM.YYYY HH:MM:SS");
Это корректно? Я хочу иметь Дату, которую я передам через BlazeDS Бэкенду J2EE, но я только вижу в базе данных затем нулевое значение. Таким образом, что-то идет не так, как надо...
С уважением.
Вы видели класс DateFormatter ?
Пример:
import mx.formatters.DateFormatter;
private var dateFormatter:DateFormatter;
private function init():void
{
dateFormatter = new DateFormatter();
dateFormatter.formatString = 'DD.MM.YYYY HH:NN:SS'
}
public function dateToString(d:Date):String
{
return dateFormatter.format(d);
}
public function stringToDate(s:String):Date
{
return dateFormatter.parseDateString(s);
}
Похоже, что кто-то спал в тот день, когда был написан Flex 3.2, потому что DateFormatter: : parseDateString
- это защищенная функция. Похоже, они исправили это в 3.5.