iphone之没有年份的NSDateFormatterFullStyle(NSDateFormatter)

jackei 阅读:63 2025-05-04 20:05:19 评论:0

使用设备上用户的currentLocale,我想要一种与NSDateFormatterFullStyle生成的日期格式完全相同的日期格式减去年份:

[dateFormatter setDateStyle:NSDateFormatterFullStyle]; 
[dateFormatter setLocale:[NSLocale currentLocale]]; 

9月21日,星期五(2012)

(2012年)9月21日金曜日

括号中的区域是我需要删除但要打印的区域。

我已经注意到iPhone应用程序,Living Earth可以做到这一点并且适用于所有语言环境,iPhone锁屏也是如此。自定义格式程序(例如 [dateFormatter setDateFormat:@"EEEE, MMMM"];)不会随本地化而更改。

谁能阐明如何实现这一目标?日期样式的所有选项似乎都没有这样做。

谢谢

请您参考如下方法:

日期格式化程序不会更改,具体取决于电话语言设置,而是取决于电话语言环境设置。如果要在应用程序中进行更改,请通过调用[dateFromatter setLocale:theLocaleYouWant]设置日期格式程序的语言环境

编辑
设置语言环境的代码

NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 
[formatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"fr"]]; 
[formatter setDateFormat:@"EEEE, dd MMMM"]; 
 
NSLog(@"Current date : %@",[formatter stringFromDate:[NSDate date]]); 
// Output vendredi, 21 septembre which is good ! 


标签:程序员
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号