如何使用 C# 将日期时间中英文文本中的月份名称转换为阿拉伯文本?

How to convert the month name in english text in datetime to arabic text using C#?

我显示的日期是 2013 年 7 月 12 日。我使用的格式是 "dd MMMM yyyy"。我想以阿拉伯语文本显示月份文本,即 July。到底有没有

我得到的结果是 يوليو يوليو,我的客户说:七月在阿拉伯语中是“يوليو”,而在网站上它显示为“يوليه”。这是错误的, 谁可以帮我这个事?

请在下面找到代码。

我尝试过的:

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

我认为问题是

dt.ToString()

在Date.Parse。 dDateTime2 设置为 12 月 7 日而不是 7 月 12 日,因为我认为有问题的文化默认为日期格式的 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

在 dateTime.toString()

中提供文化信息
        var dateTime = DateTime.Now;

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

试试这个

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

结果أكتوبر