好的。 我们遇到的问题是我们有NSString填充yyyyMMdd格式的date,我们想要做的是获得当前的工作日和月份的名称。 函数dagOmvandlare将datestring转换为工作日和月份。 然后函数调用viewDidload来命名我们所有的button标题从英语到瑞典的月份。 我们目前的解决scheme是这样的: -(NSString *)dagOmvandlare:(id) suprDatum{ NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease]; dateFormatter.dateFormat = @"yyyyMMdd"; NSDate *date = [dateFormatter dateFromString:suprDatum]; NSString * monthString = [date descriptionWithCalendarFormat:@"%B"timeZone:nil locale:[[NSUserDefaults standardUserDefaults] dictionaryRepresentation]]; if ([monthString isEqualToString:@"January"]) { monthString = @"Januari"; } else if ([monthString isEqualToString:@"February"]) { monthString = @"Februari"; } else if ([monthString isEqualToString:@"May"]) { monthString […]
我很快就学会了将datestring转换为NSDate到string。 获取这种格式的datestring“星期四,22十月2015 07:45:17 +0000”。 我需要以MM-dd-yyyy格式显示date。 我试过下面的代码,但是,它返回“null”。 let dateFormatter = NSDateFormatter() dateFormatter.dateFormat = "MM-dd-yyyy" dateFormatter.dateStyle = NSDateFormatterStyle.MediumStyle let dateObj = dateFormatter.dateFromString(dateString!) print("Dateobj: \(dateObj)") 任何人都可以请帮助哪里出错? 期待帮助。 提前致谢。
我试图以某种格式打印date: NSDate *today = [[NSDate alloc] init]; NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"yyyyMMddHHmmss"]; NSString *dateStr = [dateFormatter stringFromDate:today]; 如果iPhone设置为24小时制,则工作正常,但另一方面,如果用户已将其设置为24小时制,则返回AM / PM(直到您切换此设置才能正常工作),则会将AM追加到AM /下午,尽pipe我没有要求: 20080927030337 PM 我做错了什么或者这是固件2.1的错误? 编辑1:使描述更清晰 编辑2解决方法:事实certificate,这是一个错误,解决它我把AM和PM字符设置为“”: [dateFormatter setAMSymbol:@""]; [dateFormatter setPMSymbol:@""];
当他们说这样很贵的时候,人们的意思是什么? 我为中间存储创build了很多瞬态对象的实例(NSString和NSDate是典型的)。 我怎么知道我的程序使用NSDateFormatter是否过度使用它? 到目前为止,我倾向于创build相当于单例的东西,但是我的偏好是将其封装到与其相关的其他对象中,所以我可以使用自引用。 缺less运行性能testing,我正在寻找一个更好的“经验法则”理解为什么我应该或不应该这样做。
我有一个倒数计时器,从当前date/时间倒计时到一个特定的未来date/时间。 除了一个问题,它工作得很好。 我使用NSDateFormatter和dateFromStringinput将来的date。 虽然表示不支持24小时制,但是好像不能接受12小时以上的时间。 有没有办法启用24小时制支持或解决方法? 这是我的一些代码: NSDateFormatter *df = [[NSDateFormatter alloc] init]; [df setDateFormat:@"yyyy-MM-dd hh:mm:ss"]; NSDate *myDate = [df dateFromString:@"2010-03-14 15:00:00"]; 谢谢
尝试在iOS6中运行(未在iOS6之前testing过): NSDateFormatter *julianDayDateFormatter = nil; julianDayDateFormatter = [[NSDateFormatter alloc] init]; [julianDayDateFormatter setDateFormat:@"g"]; for (NSString *timeZone in [NSTimeZone knownTimeZoneNames]) { julianDayDateFormatter.timeZone = [NSTimeZone timeZoneWithName: timeZone]; NSDate *date = [julianDayDateFormatter dateFromString:[NSString stringWithFormat:@"%d", 2475213]]; if (date == nil) NSLog(@"timeZone = %@", timeZone); } 并得到以下输出: America/Bahia America/Campo_Grande America/Cuiaba America/Sao_Paulo 任何人都可以解释为什么这四个时区的行为像NSDateFormatter设置为朱连天数字? 所有其他时区使NSDateFormatter返回实际的NSDates。
我正在使用NSDateFormatter在iPhone应用程序中工作。 从"00:00:00", "16:00:00","15:30:00" and so on 。 如果时间是"00:00:00" to "12 AM" ,如果时间是"16:00:00" to "4 PM" ,如果时间是“15:30: 00“到”3.30 PM“。 我已经使用下面的代码,但是当我通过"16:00:00" the date returns null 。 NSString *dats1 = @"16:00:00"; NSDateFormatter *dateFormatter3 = [[[NSDateFormatter alloc] init] autorelease]; [dateFormatter3 setDateStyle:NSDateFormatterMediumStyle]; [dateFormatter3 setDateFormat:@"hh:mm:ss"]; NSDate *date1 = [dateFormatter3 dateFromString:dats1]; NSLog(@"date1 : %@", date1); **// Here returning (null)** NSDateFormatter *formatter = […]
我想parsing从XML XMLdatestring到iPhone应用程序中的NSDate对象 我知道这一定是以前曾经问过的,但是,我相信我有正确的语法,但是它不起作用。 我的代码有问题吗? 我需要parsing的datestring是: 2011-01-21T12:26:47-05:00 我用来parsing它的代码是: self.dateFormatter = [[NSDateFormatter alloc] init]; [self.dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]]; [self.dateFormatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"] autorelease]]; [self.dateFormatter setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'"]; … else if([elementName isEqualToString:kUpdated]){ self.currentQuestion.updated = [self.dateFormatter dateFromString:self.currentParsedCharacterData ]; } 任何帮助不胜感激。 谢谢! **基于来自ChrisKent的链接引用,我解决了这样的问题: else if([elementName isEqualToString:kLastOnDeck]){ NSString *dateStr = self.currentParsedCharacterData; // we need to strip out the single colon dateStr = [dateStr stringByReplacingOccurrencesOfString:@":" […]
什么setDateFormat选项NSDateFormatter我用来获得一个月份的序号后缀? 例如下面的代码片段产生: 8月15日星期六下午3:11 我必须改变什么来获得: 8月15 日星期六下午3:11 NSDate *date = [NSDate date]; NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease]; [dateFormatter setFormatterBehavior:NSDateFormatterBehavior10_4]; [dateFormatter setDateFormat:@"h:mm a EEEE MMMM d"]; NSString *dateString = [dateFormatter stringFromDate:date]; NSLog(@"%@", dateString); 在PHP中,我会用上面的情况: <?php echo date('h:m A l F jS') ?> 是否有一个NSDateFormatter相当于PHP格式string中的S选项?
我知道NSDateformatterfunction套件对于人类来说是一个福音,但同时对我来说也是非常困惑的。 我希望你能帮助我。 在我的代码中,有一个int表示一个月。 所以:1将会是1月份,2月2日等等 在我的用户界面中,我想显示这个整数作为适当的月份名称。 而且,它应该坚持设备的区域设置。 感谢您的见解 同时,我做了以下工作: int monthNumber = 11 NSString * dateString = [NSString stringWithFormat: @"%d", monthNumber]; NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"MM"]; NSDate* myDate = [dateFormatter dateFromString:dateString]; [dateFormatter release]; NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; [formatter setDateFormat:@"MMMM"]; NSString *stringFromDate = [formatter stringFromDate:myDate]; [formatter release]; 这是怎么做到的? 这似乎有点罗嗦。