Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/118.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 将HH:SS的nsstring转换为nsdate_Ios_Nsdate_Nsdateformatter - Fatal编程技术网

Ios 将HH:SS的nsstring转换为nsdate

Ios 将HH:SS的nsstring转换为nsdate,ios,nsdate,nsdateformatter,Ios,Nsdate,Nsdateformatter,当我记录“dateFromString”时,它给我零 预期结果是: NSString *dateString = @"06:30 AM"; NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"dd-MM-yyyy HH:MM:SS a"]; NSDate *dateFromString = [[NSDate alloc] init]; dateFromStr

当我记录“dateFromString”时,它给我零

预期结果是:

NSString *dateString = @"06:30 AM";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"dd-MM-yyyy HH:MM:SS a"];
NSDate *dateFromString = [[NSDate alloc] init];
dateFromString = [dateFormatter dateFromString:dateString];

请帮助

可以试试这个,可能会解决你的问题

 19-10-2016 06:30
输出:

日期打印说明:2016年10月19日上午6:30


快乐编码…

检查此答案:您可能需要将代码从Swift复制到Objective-C。您真正想要的代码可以找到。我有一个答案,但它会给出如下输出:2000-01-01 06:30:00+0000,因为您没有定义日期,它将作为默认值。如果你想要答案,我会发布it@ios请检查我的答案。由于您没有在字符串中给出日期,所以它将采用默认日期现在我想得更多,这个问题也不好,因为OP的预期结果是“
19-10-2016 06:30
”(这是一个字符串),而NSDate(通过NSLog打印出来时)将始终具有“
2016-10-19 06:30:00+0000
”的描述。您需要将输入的日期字符串转换为NSDate,然后通过另一个日期格式化程序重新转换为字符串(具有预期的结果)。不客气,我很乐意为您提供帮助!
NSDate *today = [NSDate date];
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *urDateComponents = [calendar components:(NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitDay) fromDate:today];

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"h:mm a"];

NSString *dateString = @"06:30 AM";
NSDate *urTime = [formatter dateFromString:dateString];

NSDateComponents *urTimeComponents = [[NSCalendar currentCalendar] components:(NSCalendarUnitHour | NSCalendarUnitMinute ) fromDate:urTime];

urDateComponents.hour = urTimeComponents.hour;
urDateComponents.minute = urTimeComponents.minute;

NSDate *date = [calendar dateFromComponents:urDateComponents];

[formatter setDateFormat:@"dd-MM-yyyy hh:mm a"];
NSString *dateStr = [formatter stringFromDate:date];