如何更改日期格式和文化?

时间:2013-01-09 09:39:31

标签: c# asp.net culture

我需要将字符串的文化更改为阿拉伯语。

此代码:

<%# Eval("NewsDate","{0:  dddd   dd / MMMM / yyyy }").ToString() %>

将向我展示这些结果:1994年5月1日星期日

我试图用阿拉伯语显示它,所以它看起来像这样:الاحد01-مايو - 1994

<%# Eval("NewsDate","{0:  dddd   dd / MMMM / yyyy }").ToString("{0}:",System.Globalization.CultureInfo.CreateSpecificCulture("ar-KW")) %>

我将此行添加到我的web.config:

<globalization culture="ar-KW" uiCulture="ar-KW"/>

但它没有用!

有什么建议吗?

2 个答案:

答案 0 :(得分:0)

如果您需要,您可以更改当前线程的文化,这样您就不必为每次调用执行此操作。

Thread.CurrentThread.CurrentCulture = New CultureInfo("th-TH", False)

答案 1 :(得分:0)

试试这个并告诉我它是否正常?

protected string returnDate(DateTime dt)
{

    System.Globalization.CultureInfo calture = new System.Globalization.CultureInfo("ar-KW");
    System.Globalization.DateTimeFormatInfo dtf = calture.DateTimeFormat;
    dtf.Calendar = new System.Globalization.HijriCalendar(); 
    dtf.ShortDatePattern = "dd/MM/yyyy";
    dtf.MonthDayPattern = "MMMM";
    return dt.ToString("dd/MMMM/yy", dtf);
}

然后在

中调用此函数
<%# Eval("NewsDate", returnDate(NewsDate) %>

谢谢