Actionscript中开始或结束的日期

问题描述:

我正在寻找一种在Actionscript中使用(并且目前坚持使用)Flex 4.1来获取相对于今天的开始时间的方法。Actionscript中开始或结束的日期

Calendar cal = Calendar.getInstance(); 
    cal.setTime(new Date()); 
    cal.set(Calendar.DAY_OF_WEEK, 
      1); 
    return cal.getTime(); 

我似乎无法找到任何解决方案,随时随地优雅 - - 我失去的东西:在Java中我将通过使用Calendar类做到这一点?

有两个类,同名,DateTimeFormatter。一个是纯ActionScript类,另一个是添加到Flex 4.5中的新类,它包装了Actionscript版本。 Flex version为你做了一些繁重的工作。

有一个getFirstWeekday()方法,它将分别与您指定的区域设置相对应。

[编辑] 我被带走了,没有专门回答你的问题。我不知道比DateTimeFormatter更优雅。但是从那里你可以使用一个Date对象来获得当前时间,并获得你想要的。

有一些日期实用程序,但我不知道这个特定的解决方案。您是否正在寻找类似的东西:

var timeFormatter:DateTimeFormatter = new DateTimeFormatter(LocaleID.DEFAULT, DateTimeStyle.NONE, DateTimeStyle.SHORT); 
var firstDay:int = timeFormatter.getFirstWeekday() 
var now:Date = new Date(); 
var dayDelta:int = now.day - firstDay; 
var firstDayInMillis:Number = now.time - (dayDelta * 86400 * 1000); 
// you can construct a new Date from here: var first:Date = new Date(firstDayInMillis); 
+0

排序,我正在寻找一周的开始日期对象,而不仅仅是字符串。刚刚找到第三方库房http://www.as3commons.org/as3-commons-lang/asdoc/org/as3commons/lang/DateUtils.html#getStartOfWeek()这可能是我正在寻找,但尚未确认。 – 2012-04-26 06:19:19

+0

在上面的代码中没有String参与:) Date对象返回以毫秒为单位的纪元时间。一旦你有了,你可以使用代表一周中第一天的整数来计算出所需的时间(以毫秒为单位)。然后如有必要,重新使用或创建一个新的Date对象。 – 2012-04-26 06:31:25

+0

只能使用'DateFormatter'来获取每周的第一天,这将是用户的区域设置。也许你可以在as3commons中使用这个漂亮的代码:) – 2012-04-26 06:32:09