2011-07-21 169 views
0

当我打印sourceDate的日志时,我得到空值。 它会给NULL值。返回NULL值

的代码是:

NSMutableString * orignalStr = [[NSMutableString alloc] init]; 
[orignalStr appendString:date]; 
[orignalStr replaceOccurrencesOfString:@"T" 
          withString:@" " 
           options:NSCaseInsensitiveSearch 
           range:NSMakeRange(0, 15)]; 
NSLog(@"The orignalString is =%@ ",orignalStr); 

NSDateFormatter* dateFormatter=[[NSDateFormatter alloc]init]; 
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss zzz "]; 

NSDate *sourceDate =[dateFormatter dateFromString:orignalStr]; 
NSLog(@"The sourceDate is =%@ ",sourceDate); 

plz帮助我...

+0

'originalString'的日志输出是什么? – 2011-07-21 07:17:03

+0

The Log应该是这样的.. 2011-07-21 12:25:38.814 GameTimeBaseBall [1270:207] orignalString = 2011-07-19 19 GMT:10:00 2011-07-21 12:25: 38.815 GameTimeBaseBall [1270:207] dateFormatter is = 2011-07-21 12:25:38.815 GameTimeBaseBall [1270:207] sourceDate =(null) –

+0

不,我没有得到 –

回答

1

尝试使用此日期格式的字符串:@"yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'",无需更换的@"T"出现次数。评论

编辑你有一个像字符串: “2011-07-19北京时间:10:00”,格式字符串应该是@"yyyy'-'MM'-'dd' GMT:'HH':'ss"

+0

没有它没有工作... –

+0

对不起,认为它会,我从[数据格式指南](http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/DataFormatting/Articles/dfDateFormatting10_4 html的#// apple_ref/DOC/UID/TP40002369-SW1)。什么是原始的字符串内容(你上传的日期)? – 2011-07-21 07:29:56

+1

你应该使用'as vince提到的方式转义静态字符:例如:'@“yyyy' - 'MM' - 'dd''HH':'mm':'ss'zzz”'。你的格式似乎是错误的,你有字符串'2011-07-19 19 GMT:10:00'和格式期望类似'2011-07-19 10:00:00 zzz' –