iPhone 中的日期本地化

发布于 2024-11-26 15:56:15 字数 524 浏览 1 评论 0原文

我需要本地化日期。我尝试使用以下代码,但它给出了错误的东西。

例如,如果我的语言环境是“美国”,如果我从日期选择器中获取日期(2011年8月6日,上午10:55)并将其存储在数据库中,那么在我将语言环境更改为“荷兰语”后,它工作正常,它会转换为荷兰语,例如(2011 年 8 月 6 日 10:55)

如果我从日期选择器中获取日期,例如 (2011 年 8 月 6 日 10:55) “荷兰语”然后我将语言环境更改为“美国”,其显示类似于(2011 年 7 月 6 日上午 10:55),但它应该类似于(2011 年 8 月 6 日上午 10:55)。

我使用下面的代码从字符串中获取日期本地日期:

NSDate *past = [NSDate dateWithNaturalLanguageString:@"06 augustus 2011 10:55" locale:  [[NSUserDefaults standardUserDefaults] dictionaryRepresentation]];

请帮助我

I need to localize the date. i tried with following code but its giving wrong thing.

For Example if my locale is "US" if i take date like(06 August 2011, 10:55 A.M.) from date picker and store in database then after i changed to locale to "Dutch" its working fine, it converts into dutch like (06 augustus 2011 10:55)

If i take date from date picker like (06 augustus 2011 10:55) for locale "Dutch" then I am changing to locale to "US" its display like(06 July 2011 10:55 A.M.),but it should be like(06 August 2011 10:55 A.M.).

I use below code for get date local date from string:

NSDate *past = [NSDate dateWithNaturalLanguageString:@"06 augustus 2011 10:55" locale:  [[NSUserDefaults standardUserDefaults] dictionaryRepresentation]];

please help out me

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

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

发布评论

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

评论(1

口干舌燥 2024-12-03 15:56:15

你的处理方式是错误的。您不应在数据库中存储本地化字符串,而应存储从 UIDatePicker 返回的实际日期。

始终使用 NSDate,并且仅当向用户显示时才使用 NSDateFormatter 以用户适当的语言环境显示日期。

希望这有帮助!

You're going about this the wrong way. You should not store localized strings in your database, just store the actual -date returned from UIDatePicker.

Use NSDate all the time, and only when you display to the user do you use a NSDateFormatter to show the date in the user's appropriate locale.

Hope this helps!

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