Closed. This question does not meet Stack Overflow guidelines。它当前不接受答案。












想改善这个问题吗?更新问题,以便将其作为on-topic用于堆栈溢出。

7年前关闭。



Improve this question




我正在开发一个支持英语和日语的iOS应用程序。

我想显示日期的日语日历类型(平成)。

我不想显示2013年的英语,而是要显示平成25年的英语。

平成25年1月5日(地区格式:美国,日历:日语,语言:英语)
平成25年1月5日(地区格式:日本,日历:日语,语言:英语)

注意:当我将日历类型更改为日语时,即使我在iOS日历中也看不到Heisei。

最佳答案

使用日期格式和区域设置。如果要使用“Jaiseary 5,25 Heisei”格式,那么这是en_US@calendar=japanese的语言环境标识符。 “平成25年1月5日”的标识符是ja_JP@calendar=japanese

当我将“1月5日,25平成”字符串转换为NSDate,然后将该NSDate转换回以“平成25年1月5日”形式的字符串时,此代码说明了两者的用法。

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US@calendar=japanese"];
formatter.dateStyle = NSDateFormatterLongStyle;
NSDate *date = [formatter dateFromString:@"January 5, 25 Heisei"];

formatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"ja_JP@calendar=japanese"];
NSString *string = [formatter stringFromDate:date];

10-05 20:21