您的位置:首页 > 其它

Flex4 日期类型字符串转日期类型(string转Date)

2012-12-20 17:58 274 查看
mysql数据库中存储的日期类型通过PHP返回到flex端为字符串类型,这样在flex中进行处理时就必须要将字符串转化为Date类型。如果仅仅是 "年/月/日" 的组合,而没有涉及到”时/分/秒“那么直接使用DateField的静态方法stringToDate()就可以实现,方法如下:

var strToday:String = "2011-3-12";

var dateToday:Date = DateField.stringToDate(strToday, "YYYY-MM-DD");

需要注意的是,第二个参数是字符串中日期的格式,必须跟字符串中日期的格式相同,否则就会出错。

但是,这里我遇到的问题是,字符串中包含到”时/分/秒“,而文档上写的也很明白DateField只能转化”年/月/日“,Google了一圈也没找到解决方法,不过爬了一下文档还是找到了,方法是使用——DateFormatter,例子如下:

var strToday:String = "2011-3-12 15:59:06"

var formatter:DateFormatter;

var mydate:Date = DateFormatter.parseDateString(strToday);

这样就能正确得到一个Date类型,可以获取年月日时分秒了。但是,得到的并不是"2011-3-12 15:59:06"这样的自定义格式,要想还原为这样的格式还得用formater进行字符串格式化,foramtter的使用这里就不赘述。
得到Date型数据后,
var date:Date = new Date();
if(workFlag.selectedIndex == 1){

if((date.valueOf() < DateFormatter.parseDateString(obj.end_date).getTime()) && obj.work_flag == "有效"){

searchedgiftsaleplan.addItem(obj);

}

}else if(workFlag.selectedIndex == 3){

if(date.valueOf() > DateFormatter.parseDateString(obj.end_date).getTime()){

searchedgiftsaleplan.addItem(obj);

}

}else{

searchedgiftsaleplan.addItem(obj);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: