我得到了数据库的日期,我需要将其显示为字符串.
所以在Flex中我这样做:
所以在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.7.2010 0:0:15
如何用填充0填充日,月,小时,分钟,秒?
而且,我从String回到Date:
DateField.stringToDate(myTextInput.text,"DD.MM.YYYY HH:MM:SS");
它是否正确?我希望有一个Date,我将通过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.