我得到了数据库的日期,我需要将其显示为字符串.
所以在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.