Tag: nsdateformatter

NSDateFormatter毫秒的错误

我想创build一个NSDateFormatter应该像这样“2014-05-13 23:31:41.374577”parsingdate。 所以: NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; formatter.dateFormat = @"yyyy-MM-dd HH:mm:ss.SSSSSS"; NSString *dateString = @"2014-05-13 23:31:41.374577"; NSDate *date = [formatter dateFromString:dateString]; NSString *anotherDateString = [formatter stringFromDate:date]; 但是, anotherDateString是2014-05-13 23:31:41.374000 。 为什么它截断毫秒?

检查时间和date是否在特定date和时间之间

我有3个variables; 开学date – Wed Apr 12 – Wed Jun 11 11.00 am from 11.00 pm上课时间 – 11.00 am from 11.00 pm 。 (这是一个string,11AM是开始时间,12PM是结束时间) 1.)现在,我需要获取当前date和时间( [NSDate date] ),并检查当前date是否介于startDate和endDate之间,然后检查当前时间是否在timeDuration之间(如11.00am from 11.00pm ) 2.)如果当前时间在持续时间之间(在11.00 am from 11.00 pm ),我需要计算下列情况的剩余时间; a)如果时间是上午10点,我需要计算开始时间的11.00am时间。 (答案是1 hour )。 b)如果时间是11.00am时11.45AM ,由于时间大于开始时间( 11.00am ),我需要计算剩余时间到结束时间(即11.00pm )。 c)如果时间是11.45pm时11.45pm ,由于时间大于结束时间(即11.00pm ),我需要打印一个NSLog,说'超时'。

是否可以在NSDateFormatter的格式string中添加自定义文本?

假设我想让date看起来像这样: |1988|December|30| 如何将这些添加到dateFormatter或为此,让格式是这样的: 30 in the month of December in the year of 1998 现在是1988年,12月和30日,我想用标准格式,但是我想要的文字也陪在他们身上。 特别是在上述情况下,格式和pipe道只与格式和pipe道之间没有空间的date或月份的date格式相邻。 这是可能的任何设置格式?

如何使用nsdateformatter委内瑞拉

我想在日历上安排一个date,这个date有一个开始时间和结束时间,如果时区在美国,一切正常,date变化没有帮助,我需要它到委内瑞拉我做我的地方generica,无论何时何地服务我? 在这里,我把代码留作数据,并且把date格式带给我。 comes the date in the following format: 12/10/2012 05:00 pm EKEvent* event = [EKEvent eventWithEventStore:eventStore]; NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setTimeZone:[NSTimeZone localTimeZone]]; [dateFormatter setDateFormat:@"dd/MM/yyyy hh:mm:ss a"]; horafin = [dateFormatter dateFromString:inicio]; horafin = [horafin dateByAddingTimeInterval:3600]; horainicio = [dateFormatter dateFromString:inicio]; [dateFormatter release]; NSString *ti=[[NSString alloc]initWithString:title]; NSLog(@""); event.title =@"juego"; event.startDate = horainicio; event.endDate = […]

硬件依赖的NSDateFormatter dateFromString:bug(返回nil)

我有几个datestring,我需要转换为NSDates。 我的parsing代码如下: NSString *s = [pair objectForKey:@"nodeContent"]; NSDateFormatter *f = [[NSDateFormatter alloc] init]; [f setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZZ"]; self.date = [f dateFromString:s]; 上面的代码在我们testing过的所有设备和模拟器中工作正常。 奇怪的是,当上面的代码运行在任何运行iOS 6.1或7.0.x的iPhone 5上时, self.date = [f dateFromString:s]; 每次都返回零。 我已经检查过,并且strings存在,并且与正确parsingdate的设备并排比较时包含相同的字符。 这是一个datestring示例:`2013-10-31T21:50:00-06:00' 我在这里错过了什么?

NSDateFormatter.dateFromString返回特定语言的特定date为零

我真的不知道这个代码发生了什么,我试图将string转换为date。 我不明白的是,转换适用于大多数date,但不能专门为两个date。 let dateFormatter = NSDateFormatter() dateFormatter.locale = NSLocale(localeIdentifier: "es") dateFormatter.dateFormat = "dd 'de' MMMM" dateFormatter.dateFromString("1 de octubre") dateFormatter.dateFromString("2 de octubre") dateFormatter.dateFromString("3 de octubre") dateFormatter.dateFromString("4 de octubre") dateFormatter.dateFromString("5 de octubre") dateFormatter.dateFromString("6 de octubre") dateFormatter.dateFromString("7 de octubre") dateFormatter.dateFromString("8 de octubre") dateFormatter.dateFromString("9 de octubre") dateFormatter.dateFromString("10 de octubre") dateFormatter.dateFromString("11 de octubre") dateFormatter.dateFromString("12 de octubre") dateFormatter.dateFromString("13 de octubre") dateFormatter.dateFromString("14 […]

从UTC-5时区date和时间iPhone应用获取当前的iPhone设备时区date和时间?

在我的iPhone应用程序,我非常努力地将web服务响应时间转换为当前设备时间。 webservice time in UTC-5 timezone的webservice time in UTC-5 timezone 。 该应用程序是全球使用应用程序 所以我必须将响应时间转换为当前设备时区。 这是简单的消息应用程序。 当我发送message the time is "5:05 PM" (India Chennai timezone)但是当我从webservice is "2012-07-16 07:33:01"检索时间webservice is "2012-07-16 07:33:01" 。 当我在应用程序中显示时间时,我应该将时间转换为设备的当地时间。 我已经尝试了一些方法,但我还不能解决。 代码是: NSDateFormatter *dateFormatter1 = [[NSDateFormatter alloc] init]; [dateFormatter1 setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; [dateFormatter1 setLocale:[NSLocale currentLocale]]; //[dateFormatter1 setTimeZone:[NSTimeZone timeZoneWithName:@"IST"]]; [dateFormatters setTimeZone:[NSTimeZone systemTimeZone]]; NSDate *date = [dateFormatter1 […]

对于某些值,dateFromString返回nil

在swift使用dateFromString ,我得到了一些值。 我搜查了很多,但徒劳无功。 以下是我的代码: let strDate = self.sortedDict.valueForKey("TIME").objectAtIndex(indexPath.row).objectAtIndex(0) as? String print(strDate); let st_date = frmt.dateFromString(strDate!) let frmt1:NSDateFormatter = NSDateFormatter() frmt1.locale = NSLocale(localeIdentifier: localeStr) frmt1.dateFormat = "MMM, dd yyyy hh:mm a" if st_date != nil { print(st_date) } 输出控制台: Optional("September, 20 2015 10:00:00") Optional(2015-09-20 10:00:00 +0000) Optional("October, 04 2015 10:00:00") Optional(2015-10-04 10:00:00 +0000) Optional("October, 04 2015 […]

NSDateFormatter从string返回不正确的date

我有一个方法, + (NSDate *) convertToDateFrom:(NSString *) dateString { if (dateString == nil || [dateString isEqual:@""]) return nil; //return nil if dateString is empty NSDateFormatter *df = [[NSDateFormatter alloc] init]; [df setDateFormat:@"EEEE, dd MMMM yyyy HH:mm"]; NSDate *date = [df dateFromString:dateString]; return date; } 当我通过时, @"Monday, 21 November 2011 17:01" //Passed string 它返回一个错误的date, 2011-11-21 23:14:00 +0000 […]

为什么NSDateFormatter不能从ISO 8601格式parsingdate

可能重复: 将ISO 8601时间戳转换为NSDate:如何处理UTC时间偏移? 我使用rails作为后端,默认date输出是2008-12-29T00:27:42-08:00 但是,在我的研究NSDateFormatter不能支持它,除了我改变date2008-12-29T00:27:42-0800 这里是我用来parsingISO 8601date的代码,但是这不起作用 NSDateFormatter* dateFormatter = [[[NSDateFormatter alloc] init] autorelease]; [dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZ"]; NSLog(@"%@", [dateFormatter dateFromString:@"2008-12-29T00:27:42-08:00"]); 有任何想法吗?