2012-10-28 13 views
7

私はイスラムの現在のdayの名前、monthの名前を表示しようとしています。 NSLocaleを使用して地域をar_SAに設定しましたが、英語とアラビア語の曜日と月の名前を変換しています。私はアラビア語で取得していグレゴリオ暦の月と日の名前をイスラムに変更しますか? NSDate

出力:

١٢ الأحد ، اكتوبر ، ٢٠١٢英語で私が欲しい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); 

私は願っていますそれは明らかなfまたは皆さん。

+0

ヘブライ日付とアラビア語の日付は同じですか? – pordi

+0

よろしくお願いいたします。私はその違いを確認して、それはまったく違うものです。下記の回答をご確認の上、お知らせください。 – pordi

+0

彼らは完全に異なっています:) – Sobiaholic

答えて

9

私は、これは私がこの記事はかなり古いです知っているが、私は他の参考のために、以下のようスウィフト3のコードを追加する必要があると思い

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]; 
+0

詳細を確認することができますhttp://stackoverflow.com/questions/4354337/hijri-islamic-calendar-problem – pordi

+0

私は質問を投稿する前に、実際に私はこの答えをチェックしました。ただし、このコードでは数値の日付のみが表示されます。 dd/mm/yyyy。キーの問題は特に 'setDateStyle'の' NSDateFormatter'にあります。 – Sobiaholic

+0

私は答えを更新しましたそれが動作することを確認してください – pordi

1

を助けるだろうと思います。

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 
関連する問題