没有从字符串获取正确的日期

时间:2013-06-22 09:00:58

标签: ios objective-c nsdate nsdatecomponents

我使用以下代码从字符串中获取日期但未显示正确的日期

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

[saveddf setDateFormat:@"EEEE_MMMM dd_YYYY hh:mm a"];
[saveddf setTimeZone:[NSTimeZone systemTimeZone]];
NSDate *savedtdate = [[NSDate alloc] init];
savedtdate = [saveddf dateFromString:datestring];



Saturday_June 22_2013 11:44 AM  -- INPUT (datestring).

2013-01-05 06:14:00 +0000 This is output i am getting.(savedtdate).

请告诉我的代码中有什么不对。

2 个答案:

答案 0 :(得分:1)

试试这段代码吧:

NSString *yourStringDate = @"Saturday_June 22_2013 11:44 AM";
NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setDateFormat:@"EEE_MMM dd_yyyy hh:mm a"];

NSDate *date = [dateFormatter dateFromString: yourStringDate];

  //Set the required date format
[dateFormatter setDateFormat:@"dd-MM-yyyy hh:mm"];

NSString *convertedString = [dateFormatter stringFromDate:date];
NSLog(@"Converted String : %@",convertedString);

答案 1 :(得分:0)

尝试使用此代码

NSDateFormatter *formatter;
NSString        *dateString;

formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"dd-MM-yyyy HH:mm"];
dateString = [formatter stringFromDate:[NSDate date]];
NSLog(@"%@",dateString);