2017-10-12 6 views
0

2013年7月12日に表示される日付があります。「dd MMMM yyyy」の形式を使用しています。月のテキスト、すなわち7月をアラビア語のテキストで表示したい。とにかくありますか?C#を使用してアラビア語のテキストに月の名前を日時の英語のテキストに変換するには?

私のクライアントは、代わりに結果としてيوليهを取得しています:7月は「يوليو」アラビア語で、ウェブサイトでは「يوليه」と表示されます。どちらが間違っている、 誰も私にこれを助けることができますか?

下記のコードをご覧ください。

CultureInfo uiCulture1 = CultureInfo.CurrentUICulture; //'ar-AE' 
DateTime dDateTime2 = DateTime.Parse(dt.ToString(), uiCulture1, System.Globalization.DateTimeStyles.AssumeLocal); 
lblDate.Value = dt.ToString("dd MMMM yyyy"); 
+0

この

var dateTime = DateTime.Now; var month = DateTime.Now.ToString("MMMM", new CultureInfo("ar-AE")); Console.WriteLine(month); 

を試してみてください、私は本当にこのためのソリューションを知っているがありませんيوليهの意味は「7月」です。 –

+0

はい....、あなたが私たちのローカルマシン上でそれを試してみると、正しいことが表示されます。しかし、私たちのアプリケーションをホストするとき、それは間違っていますيوليه。何が原因だろうか? – Reshmy

答えて

0

結果أكتوبر

0

私は問題がDate.Parseで

dt.ToString() 

だと思う:私は試してみました何

。 dDateTime2は、7月12日ではなく、12月7日に設定されています。なぜなら、問題のカルチャが日付形式のdd-mm-yyyyにデフォルト設定されているからです。

var dt = new DateTime(2013, 07, 12); 
Console.WriteLine(dt.ToString("dd MMMM yyyy")); //12 July 2013 

CultureInfo uiCulture1 = new CultureInfo("ar-AE"); //'ar-AE' 
DateTime dDateTime2 = DateTime.Parse(dt.ToString(), uiCulture1, System.Globalization.DateTimeStyles.AssumeLocal); 

Console.WriteLine(dDateTime2.ToString("dd MMMM yyyy")); // 07 December 2013 

Console.WriteLine(dt.ToString("dd MMMM yyyy", uiCulture1)); //12 يوليو 2013 
+0

ありがとうございます...私はローカルマシンでこれらを試してみましたが、正しく表示されていますが、あなたがそのウェブサイトを正しく表示していない場合は、 – Reshmy

+0

@Reshmyどこにホストしていますか? – Saif

+0

プロダクションサーバ – Reshmy

0

dateTime.toStringにおける文化情報を(提供)

 var dateTime = DateTime.Now; 

     var uiCulture = new CultureInfo("ar-AE"); 
     Console.WriteLine(dateTime.ToString("dd MMM yyyy",uiCulture)); 
+0

ローカルマシンでこれらを試してみましたが、正しく表示されています – Reshmy

関連する問題