我正在尝试显示伊斯兰当前day
名称,month
名称。我使用NSLocale将区域设置为ar_SA
,但它只是将日期和月份名称从英语翻译成阿拉伯语。
输出我用阿拉伯语:
١٢ الأحد ، اكتوبر ، ٢٠١٢
,英文为Sunday, October 28, 2012
我想要的输出:
Al-Ahad, Dul-Hijja 12, 1433
段:
NSDateFormatter *islamicFormatter = [[NSDateFormatter alloc]init];
[islamicFormatter setDateStyle:NSDateFormatterFullStyle];
[islamicFormatter setLocale:[[NSLocale alloc]initWithLocaleIdentifier:@"ar_SA"]];
NSString *islamicDateString = [islamicFormatter stringFromDate:islamicDate];
NSLog(@"%@",islamicDateString);
我希望你们能清楚。
答案 0 :(得分:10)
我认为这会有所帮助
NSCalendar * hijri = [[NSCalendar alloc] initWithCalendarIdentifier:NSIslamicCalendar];
NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
[formatter setDateStyle:NSDateFormatterLongStyle];
[formatter setTimeStyle:NSDateFormatterNoStyle];
[formatter setCalendar:hijri];
NSLog(@"hijri: %@", [formatter stringFromDate:[NSDate date]]);
[formatter release];
答案 1 :(得分:1)
我知道这篇文章很老但我认为有必要添加Swift 3代码,如下所示。
let hijri = Calendar(identifier: .islamic)
let formatter = DateFormatter()
formatter.calendar = hijri
formatter.dateFormat = "d MMMM yyyy"
let today = Date()
let dateString = formatter.string(from: today)
print(dateString)
// the output: 16 Jamada II 1438