Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/109.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 NSDateFormatter dateFromString返回null_Ios_Objective C_Nsdateformatter - Fatal编程技术网

Ios NSDateFormatter dateFromString返回null

Ios NSDateFormatter dateFromString返回null,ios,objective-c,nsdateformatter,Ios,Objective C,Nsdateformatter,我想从NSString获取NSDate。我的代码: NSDateFormatter *dateFormatter = [NSDateFormatter new]; [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; NSDate *date = [dateFormatter dateFromString:@"2016-05-05 09:29:31"]; NSLog(@"date %@",date); 我在控制台中看到: date (nul

我想从NSString获取NSDate。我的代码:

NSDateFormatter *dateFormatter = [NSDateFormatter new];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate *date = [dateFormatter dateFromString:@"2016-05-05 09:29:31"];
NSLog(@"date %@",date);
我在控制台中看到:

date (null)
我的日期格式有什么问题?谢谢。

我试过你的问题了

NSDateFormatter *dateFormatter = [NSDateFormatter new];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate *date = [dateFormatter dateFromString:@"2016-05-05 09:29:31"];
NSLog(@"newDate :  %@",date);
我得到的结果是

我试过你的问题

NSDateFormatter *dateFormatter = [NSDateFormatter new];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate *date = [dateFormatter dateFromString:@"2016-05-05 09:29:31"];
NSLog(@"newDate :  %@",date);
我得到的结果是

使用下面的代码

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd hh:mm:ss"];
NSString *date_time  =  [dateFormatter stringFromDate:[NSDate date]];
希望这是有用的

使用下面的代码

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd hh:mm:ss"];
NSString *date_time  =  [dateFormatter stringFromDate:[NSDate date]];
希望这是有用的

试试这段代码

NSString *dateString = @"05-05-2016 09:29:31";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

// if format doesn't match you'll get nil from your string, so be careful

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

dateFromString = [dateFormatter dateFromString:dateString];
试试这个代码

NSString *dateString = @"05-05-2016 09:29:31";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

// if format doesn't match you'll get nil from your string, so be careful

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

dateFromString = [dateFormatter dateFromString:dateString];

您还可以使用“我的代码”从NSString获取NSDate,以获得您想要的任何格式

下面是我的代码:

- (NSDate *)dateFromString:(NSString *)stringDate withFormat:(NSString *)format {
    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];

    formatter.dateFormat = format;

    NSDate *dateFromString = [formatter dateFromString:stringDate];

    return dateFromString; }

您还可以使用“我的代码”从NSString获取NSDate,以获得您想要的任何格式

下面是我的代码:

- (NSDate *)dateFromString:(NSString *)stringDate withFormat:(NSString *)format {
    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];

    formatter.dateFormat = format;

    NSDate *dateFromString = [formatter dateFromString:stringDate];

    return dateFromString; }

你的代码是正确的。

如果设备设置为AM/PM时间,并且请求的字符串格式设置为@“yyyy MM dd HH:MM:ss”,则dateFromString将返回零。尝试将区域设置设置为:

[dateFormatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]];

你的代码是正确的。

如果设备设置为AM/PM时间,并且请求的字符串格式设置为@“yyyy MM dd HH:MM:ss”,则dateFromString将返回零。尝试将区域设置设置为:

[dateFormatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]];

你确定
05-05
MM dd
还是
dd MM
嗨,这个代码没有任何问题,我正在获取NSDate的对象。我获取日期:2016-05-11 17:20:06.498 StackLearn[11440:173878]日期2016-05-05 03:59:31+0000我认为代码中没有任何错误。它不应该返回null!!!!你确定
05-05
MM dd
还是
dd MM
嗨,这个代码没有任何问题,我正在获取NSDate的对象。我获取日期:2016-05-11 17:20:06.498 StackLearn[11440:173878]日期2016-05-05 03:59:31+0000我认为代码中没有任何错误。它不应该返回null!!!!就是这样!谢谢大家!@尤金尼科夫-太棒了!!就是这样!谢谢大家!@尤金尼科夫-太棒了!!与输入不匹配的格式是我的问题。我首先将格式化程序的格式设置为与预期输入相匹配,创建日期,然后将格式化程序的格式更改为所需的输出,并调用[dateFormatter stringFromDate:dateString]解决了这个问题。与输入不匹配的格式是我的问题。我首先将格式化程序的格式设置为与预期输入匹配,创建日期,然后将格式化程序的格式更改为所需的输出,并调用[dateFormatter stringFromDate:dateString]