相关疑难解决方法(0)

将NSString转换为NSDate(并再次返回)

我如何将NSString" 01/02/10 "(意思是2010年2月1日)转换为NSDate?我怎么能把NSDate后面变成一个字符串?

objective-c nsdate nsstring ios

227
推荐指数
5
解决办法
16万
查看次数

NSString到NSDate

我有一个包含当前日期的字符串,使用它:

NSString *date = [[NSDate date] description];
Run Code Online (Sandbox Code Playgroud)

在不同的点,我想从这个字符串中检索日期,我使用以下代码:

[NSDateFormatter setDefaultFormatterBehavior:NSDateFormatterBehavior10_4];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
//[NSDateFormatter setDefaultFormatterBehavior:NSDateFormatterBehaviorDefault];
[dateFormatter setDateFormat:@"YYYY-MM-DD HH:MM:SS ±HHMM"];

NSDate *dateFromString = [[NSDate alloc] init];
dateFromString = [dateFormatter dateFromString:<NSString containing date>];
Run Code Online (Sandbox Code Playgroud)

我正在dateFromStringnil为0x0.我究竟做错了什么?

cocoa nsdate nsstring nsdateformatter

38
推荐指数
2
解决办法
4万
查看次数

iPhone SDK NSString到NSDate

我从解析XML文件得到一个字符串,如下所示:星期五,2010年4月9日00:00:45 +0200,相应的模式应该是"EEE,dd MMM yyyy HH:mm:ss ZZ",但我得到了(空值).

这是我的代码:

NSString *dateString = @"Fri, 09 Apr 2010 00:00:45 +0200";

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss ZZ"];

NSDate *date = [dateFormatter dateFromString:dateString];
NSLog(@"date:%@",date); // result date:(null)
Run Code Online (Sandbox Code Playgroud)

编辑:

这对我有用,我不得不切换到en-US语言环境:

NSLocale* usLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en-US"];

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

[dateFormatter setLocale:usLocale];
[dateFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss ZZ"];

NSDate *date = [dateFormatter dateFromString:dateString];
Run Code Online (Sandbox Code Playgroud)

iphone date nsdate nsstring nsdateformatter

9
推荐指数
1
解决办法
7002
查看次数

如何从NSString转换为NSDate?

如何转换NSString至NSDate?

它必须是yyyy-MM-dd HH:mm:当它从NSString转换为NSDate格式时是这种格式

iphone cocoa cocoa-touch

5
推荐指数
1
解决办法
4797
查看次数