Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/27.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
Iphone 日志中的日期/时间不正确_Iphone_Objective C - Fatal编程技术网

Iphone 日志中的日期/时间不正确

Iphone 日志中的日期/时间不正确,iphone,objective-c,Iphone,Objective C,我允许用户在UITextField中输入日期。当我格式化字符串并在NSLog语句中输出它时,我得到的日期值不正确。例如,当我在文本字段中输入11-16-2011 11:43时,我在日志中得到2010-12-26 16:43:00+0000。我的代码如下: NSString *dateString = dateTextField.text; //create a NSDateFormatter that can be used to create a NSDate from the string

我允许用户在UITextField中输入日期。当我格式化字符串并在NSLog语句中输出它时,我得到的日期值不正确。例如,当我在文本字段中输入11-16-2011 11:43时,我在日志中得到2010-12-26 16:43:00+0000。我的代码如下:

NSString *dateString = dateTextField.text;

//create a NSDateFormatter that can be used to create a NSDate from the string
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"MM-dd-YYYY hh:mm"];
[formatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:-18000]];

//create a NSDate from the string using our formatter
NSDate *alertTime = [formatter dateFromString:dateString];

NSLog(@"dateString is %@", alertTime);

[formatter release];

谢谢

大约一周前,我身上也发生了类似的事情。经过一番挖掘,我不得不将格式从几个小写字符改为大写

不确定这是否有效,但请尝试更改

[formatter setDateFormat:@"MM-dd-YYYY hh:mm"];
为此:

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

p.S.。如果你开始接受帮助你的答案,你可能会得到更多答案。:)大约一周前,我身上也发生了类似的事情。经过一番挖掘,我不得不将格式从几个小写字符改为大写

不确定这是否有效,但请尝试更改

[formatter setDateFormat:@"MM-dd-YYYY hh:mm"];
为此:

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

p.S.。如果你开始接受帮助你的答案,你可能会得到更多答案。:)

Louie的答案是正确的,但是考虑使用As用于用户日期输入。Louie的回答是正确的,但是考虑使用A来代替用户日期输入。 使用yyyy表示年份。从文档:

它使用yyyy指定年份组件。一个常见的错误是使用 YYYY。yyyy指定日历年,而yyyy指定年份 (指“一年中的一周”),用于ISO年-周日历。大多数 案例yyyy和yyyy产生相同的数字,但它们可能是相同的 不一样。通常,您应该使用日历年

此外:

小时[1-12]


小时[0-23]。

使用yyyy表示年份。从文档:

它使用yyyy指定年份组件。一个常见的错误是使用 YYYY。yyyy指定日历年,而yyyy指定年份 (指“一年中的一周”),用于ISO年-周日历。大多数 案例yyyy和yyyy产生相同的数字,但它们可能是相同的 不一样。通常,您应该使用日历年

此外:

小时[1-12]

小时[0-23]