草庐IT

NSDateComponents

全部标签

iphone - NSDateComponents 不会正确更改小时组件

我不明白为什么我不能使用NSDateComponents正确地更改NSDate的小时,我会这样做:NSDateComponentcomponents=[calendarcomponents:(NSYearCalendarUnit|NSMonthCalendarUnit|NSDayCalendarUnit)fromDate:today];[componentssetMinute:myMinute];[componentssetHour:7];NSDate*myNewDate=[calendardateFromComponents:components];NSLog(@"%@",myNew

ios - NSDateComponents 的 NSLog 分秒 - 如何显示前导零?

我真的需要帮助。编码结果为2:0:0,格式设置为hh:mm:ss。我希望结果为2:00:00(当分秒小于10时,在分秒前添加0)。NSDateFormatter*test=[[NSDateFormatteralloc]init];[testsetDateFormat:@"HH:mm:ss"];NSDate*date1=[testdateFromString:@"18:00:00"];NSDate*date2=[testdateFromString:@"20:00:00"];NSCalendar*gregorian=[[NSCalendaralloc]initWithCalendarId

objective-c - 设置 NSDateComponents 导致不正确的 NSDate

我正在尝试获取本地时间为21:00的NSDate对象——不关心是哪一天。我对这个非常奇怪的结果感到困惑:NSCalendar*calendar=[[NSCalendaralloc]initWithCalendarIdentifier:NSGregorianCalendar];NSDateComponents*components=[[NSDateComponentsalloc]init];[componentssetHour:21];[componentssetMinute:0];[componentssetSecond:0];NSDate*date=[calendardateFrom

ios - 来自 NSDateComponents 的有序工作日索引

我为NSDate创建了一个类别,它可以用工作日名称创建日期的字符串表示形式,例如Thursday5January。我想获取工作日索引并使用自定义的工作日数组,这些工作日存储在plist中并本地化为英语和西类牙语。但是使用NSDateComponents给了我一些意想不到的结果。我正在请求NSWeekdayOrdinalCalendarUnit和NSWeekdayCalendarUnit并将结果输出到日志,我得到以下示例:NSDateComponents*components=[[NSCalendarcurrentCalendar]components:NSWeekdayOrdinalC

iphone - NSDateComponents 这一年最后一周的周组件

一年有多少周?因为我在网上搜索过,我发现一年总共有52.1周,但是如果我在Xcode中这样做:NSCalendar*gregorian=[[NSCalendaralloc]initWithCalendarIdentifier:NSGregorianCalendar];[gregoriansetFirstWeekday:2];NSDate*sourceDate=[NSDatedate];NSTimeZone*sourceTimeZone=[NSTimeZonetimeZoneWithAbbreviation:@"GMT"];NSTimeZone*destinationTimeZone=[

ios - 我想在 NSDateComponents 类中获得四分之一的值(value)

我想从指定日期获取四分之一的值。(*日期变量)所以。我制作了以下代码并运行。但是,季度值为零。为什么季度值(value)为零?哪里有问题?请高人指点。NSDateComponents*comp1=[[NSDateComponentsalloc]init];[comp1setYear:2012];[comp1setMonth:6];[comp1setDay:1];NSCalendar*gregorian=[[NSCalendaralloc]initWithCalendarIdentifier:NSGregorianCalendar];NSDate*date=[gregoriandateF

objective-c - 在 Objective-C 中,要以整数形式获取当前的小时和分钟,我们需要使用 NSDateComponents 和 NSCalendar?

我想以整数形式获取当前的小时和分钟。因此,如果现在是凌晨3:16,我想得到两个整数:3和16。但看起来[NSDatedate]会给出自1970年以来的秒数,或者它可以给出当前时间表示的字符串,但是没有简单的方法将它们作为整数获取?我在Gettingcurrenttime中看到一个帖子,但它涉及NSDateComponents和NSCalendar?那太复杂了......所需要的只是像这样的东西NSDate*date=[NSDatedate];inthour=[dategetHour];//whichisnotpossible有没有比使用3个类NSDate、NSDateComponent

swift - NSDateComponents Formatter string 从日期(到,toDate :) returns nil

问题为什么string为零?letformatter=NSDateComponentsFormatter()letreferenceDate=NSDate(timeIntervalSinceReferenceDate:0)letintervalDate=NSDate(timeInterval:3628810,sinceDate:referenceDate)letstring=formatter.stringFromDate(referenceDate,toDate:intervalDate)我希望返回类似“6w10s”的字符串。(6周是3,628,800秒。)尝试故障排除为了排除故障,

objective-c - NSDateComponents 返回 nil

我正在尝试获取一个将小时、分钟和秒初始化为0的NSDate对象。我正在使用下面的代码来获取它,但由于某种原因,我从[NSDateComponentsdate]得到了nil。我的代码有什么问题?NSCalendar*gregorian=[[[NSCalendaralloc]initWithCalendarIdentifier:NSGregorianCalendar]autorelease];NSDate*now=[[[NSDatealloc]init]autorelease];NSDateComponents*nowDc=[gregoriancomponents:(NSYearCalen

swift - 在 Swift 中使用 NSDateComponents 从出生日期计算年龄

我正在尝试使用此函数在Swift中从birthdayDate计算年龄:varcalendar:NSCalendar=NSCalendar.currentCalendar()vardateComponentNow:NSDateComponents=calendar.components(NSCalendarUnit.CalendarUnitYear,fromDate:birthday,toDate:age,options:0)但是我得到一个错误ExtraargumenttoDateincall在objective-c中,这是代码,但我不知道为什么会出现此错误:NSDate*birthda