iphone - NSDateFormatter 问题?

发布于 2024-10-02 10:45:34 字数 284 浏览 5 评论 0原文

我有一个 nsdateformatter

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

值:2010-01-01 05:00:00.000 它返回正确的值

,但值:2010-01-01 05:22:00.000 它返回 null。

根据文档,如果我一分钟是正确的,我应该使用“mm” 那么我的代码有什么问题以及为什么它返回 nil?

I have an nsdateformatter

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

for value : 2010-01-01 05:00:00.000
it returns the correct value

but for value: 2010-01-01 05:22:00.000
it returns null.

According to the documentation if i am correct for minute i am suppose to use "mm"
So what's wrong with my code and why does it return nil?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

夏了南城 2024-10-09 10:45:34
NSDateFormatter * f = [[NSDateFormatter alloc] init];
[f setDateFormat:@"yyyy-MM-dd HH:mm:ss.SSS"];
NSLog(@"%@", [f dateFromString:@"2010-01-01 05:00:00.000"]);
NSLog(@"%@", [f dateFromString:@"2010-01-01 05:22:00.000"]);
[f release];

日志:

2010-11-16 16:44:11.867 EmptyFoundation[42477:a0f] 2010-01-01 05:00:00 -0700
2010-11-16 16:44:11.868 EmptyFoundation[42477:a0f] 2010-01-01 05:22:00 -0700

所以它正在正确解析事物。因此,你在其他地方做错了事情。

NSDateFormatter * f = [[NSDateFormatter alloc] init];
[f setDateFormat:@"yyyy-MM-dd HH:mm:ss.SSS"];
NSLog(@"%@", [f dateFromString:@"2010-01-01 05:00:00.000"]);
NSLog(@"%@", [f dateFromString:@"2010-01-01 05:22:00.000"]);
[f release];

Logs:

2010-11-16 16:44:11.867 EmptyFoundation[42477:a0f] 2010-01-01 05:00:00 -0700
2010-11-16 16:44:11.868 EmptyFoundation[42477:a0f] 2010-01-01 05:22:00 -0700

So it is parsing things correctly. Thus, you are doing something wrong somewhere else.

懷念過去 2024-10-09 10:45:34

对我来说看起来很干净。我尝试了一下,得到了正确的结果:

NSDateFormatter *f = [[NSDateFormatter alloc] init];
[f setDateFormat:@"yyyy-MM-dd HH:mm:ss.SSS"];
NSDate *date = [f dateFromString:@"2010-01-02 03:44:55.666"];

NSLog(@"%@",date);
NSDateFormatter *f2 = [[NSDateFormatter alloc] init];
[f2 setDateFormat:@"d. MMMM yyyy HH mm ss SSS"];
NSString *s = [f2 stringFromDate:date];

NSLog(@"Date is really %@",s);

返回以下输出:

2010-11-16 18:48:35.221 Test3[6407:207] 2010-01-02 03:44:55 -0500
2010-11-16 18:48:35.223 Test3[6407:207] Date is really 2. January 2010 03 44 55 666

It looks clean to me. I tried it and got correct results:

NSDateFormatter *f = [[NSDateFormatter alloc] init];
[f setDateFormat:@"yyyy-MM-dd HH:mm:ss.SSS"];
NSDate *date = [f dateFromString:@"2010-01-02 03:44:55.666"];

NSLog(@"%@",date);
NSDateFormatter *f2 = [[NSDateFormatter alloc] init];
[f2 setDateFormat:@"d. MMMM yyyy HH mm ss SSS"];
NSString *s = [f2 stringFromDate:date];

NSLog(@"Date is really %@",s);

Returned the following output:

2010-11-16 18:48:35.221 Test3[6407:207] 2010-01-02 03:44:55 -0500
2010-11-16 18:48:35.223 Test3[6407:207] Date is really 2. January 2010 03 44 55 666
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文