NSString 中的 NSDate ,显示前一天

发布于 2024-12-09 10:07:50 字数 402 浏览 0 评论 0原文

我有来自 NSString 的简单 NSDate,如下所示,

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
                    [dateFormatter setDateFormat:@"yyyy-MM-dd"];
                    issueDatabase.album_date = [dateFormatter dateFromString:albumXML.album_date];

但由于某种原因,如果我的 albumXML.album_date 等于 2011-09-01,我将得到前一天而不是当前日期,例如,

我将以下内容存储在我的数据库中 2011- 08-31

I have s imple NSDate from NSString as below

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
                    [dateFormatter setDateFormat:@"yyyy-MM-dd"];
                    issueDatabase.album_date = [dateFormatter dateFromString:albumXML.album_date];

but for some reason I'm getting the previous day instead of the current for eample if my

albumXML.album_date is equal 2011-09-01 I'm getting the following stored in my database 2011-08-31

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

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

发布评论

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

评论(1

空袭的梦i 2024-12-16 10:07:50

您需要为您的 dateFormatter 设置一个时区:

[dateFormatter setTimeZone:[NSTimeZone defaultTimeZone]];

如果您不这样做,您可能会获得 GMT 时区,根据您在地球上的位置,该时区可能会出现在过去......

You need to set a timezone to your dateFormatter:

[dateFormatter setTimeZone:[NSTimeZone defaultTimeZone]];

If you don't, you're probably getting the GMT timezone, which could appear in the past depending on where you are on the planet...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文