NSDate dateFromString返回nil

时间:2013-10-31 14:06:52

标签: ios nsdata nsdateformatter date-format

我遇到问题,将datefromstring.Result作为nil返回给我。

在Debug中,我看到以下结果:

self.searchDate=2013-10-31 13:48:16 +0000
salidaDateString=31/10/2013 14:48 08.35
prevhorasalida=08:23

以下是我的代码。

[dateFormatter setDateFormat:@"dd-MM-yyyy"];
NSString *salidaDateString = [NSString stringWithFormat:@"%@ %@",[dateFormatter stringFromDate:self.searchDate],prevHoraSalida];

[dateFormatter setDateFormat:@"dd-MM-yyyy HH:mm:ss"];
NSDate *fechasalida = [dateFormatter dateFromString:salidaDateString];

fechasalida是零

我该如何解决这个问题。提前谢谢。

1 个答案:

答案 0 :(得分:2)

问题是prevhorasalida=08:23,这里你只有HH:mm而不是第二个。

将您的HH:mm:ss替换为HH.mm,而不是ss并使用'。'相反,如果':',这应该有用。

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

[dateFormatter setDateFormat:@"dd-MM-yyyy"];

NSString *prevHoraSalida = @"08.23";

NSString *salidaDateString = [NSString stringWithFormat:@"%@ %@",[dateFormatter stringFromDate:[NSDate date]],prevHoraSalida];

[dateFormatter setDateFormat:@"dd-MM-yyyy HH.mm"];

NSDate *fechasalida = [dateFormatter dateFromString:salidaDateString];

NSLog(@"%@", fechasalida);