C#更改CurrentCulture DateTimeFormat不起作用
我尝试向我的ASP.NET网站添加新的语言支持(英语) 但是我所有的日期时间格式都从 到 当我把语言改成“恩恩” 为了解决这个问题,我编写了以下代码:C#更改CurrentCulture DateTimeFormat不起作用,c#,asp.net,datetime,cultureinfo,C#,Asp.net,Datetime,Cultureinfo,我尝试向我的ASP.NET网站添加新的语言支持(英语) 但是我所有的日期时间格式都从 到 当我把语言改成“恩恩” 为了解决这个问题,我编写了以下代码: CultureInfo cultureInfo = new CultureInfo("en-EN"); cultureInfo.DateTimeFormat.FullDateTimePattern = "dddd, d MMMM yyyy 'y.'"; cultureInfo.DateTimeFormat.FullDateTimePatter
CultureInfo cultureInfo = new CultureInfo("en-EN");
cultureInfo.DateTimeFormat.FullDateTimePattern = "dddd, d MMMM yyyy 'y.'";
cultureInfo.DateTimeFormat.FullDateTimePattern = "dd MMMM yyyy 'y.'";
cultureInfo.DateTimeFormat.FullDateTimePattern = "d MMMM yyyy 'y.'";
cultureInfo.DateTimeFormat.DateSeparator = ".";
cultureInfo.DateTimeFormat.ShortDatePattern = "d.M.yy";
cultureInfo.DateTimeFormat.ShortDatePattern = "d.MM.yy";
cultureInfo.DateTimeFormat.ShortDatePattern = "dd.MM.yyyy";
System.Threading.Thread.CurrentThread.CurrentCulture = cultureInfo;
System.Threading.Thread.CurrentThread.CurrentUICulture = cultureInfo;
但是我的日期时间格式仍然像d\M\yyyy
怎么了?请帮忙 检查对时间格式的完整理解:- 例如:
DateTime.Now.ToString("MM/dd/yyyy") 05/29/2015
DateTime.Now.ToString("dddd, dd MMMM yyyy") Friday, 29 May 2015
DateTime.Now.ToString("dddd, dd MMMM yyyy") Friday, 29 May 2015 05:50
DateTime.Now.ToString("dddd, dd MMMM yyyy") Friday, 29 May 2015 05:50 AM
DateTime.Now.ToString("dddd, dd MMMM yyyy") Friday, 29 May 2015 5:50
DateTime.Now.ToString("dddd, dd MMMM yyyy") Friday, 29 May 2015 5:50 AM
DateTime.Now.ToString("dddd, dd MMMM yyyy HH:mm:ss") Friday, 29 May 2015 05:50:06
DateTime.Now.ToString("MM/dd/yyyy HH:mm") 05/29/2015 05:50
DateTime.Now.ToString("MM/dd/yyyy hh:mm tt") 05/29/2015 05:50 AM
DateTime.Now.ToString("MM/dd/yyyy H:mm") 05/29/2015 5:50
DateTime.Now.ToString("MM/dd/yyyy h:mm tt") 05/29/2015 5:50 AM
DateTime.Now.ToString("MM/dd/yyyy HH:mm:ss") 05/29/2015 05:50:06
DateTime.Now.ToString("MMMM dd") May 29
DateTime.Now.ToString("yyyy’-‘MM’-‘dd’T’HH’:’mm’:’ss.fffffffK") 2015-05-16T05:50:06.7199222-04:00
DateTime.Now.ToString("ddd, dd MMM yyy HH’:’mm’:’ss ‘GMT’") Fri, 16 May 2015 05:50:06 GMT
DateTime.Now.ToString("yyyy’-‘MM’-‘dd’T’HH’:’mm’:’ss") 2015-05-16T05:50:06
DateTime.Now.ToString("HH:mm") 05:50
DateTime.Now.ToString("hh:mm tt") 05:50 AM
DateTime.Now.ToString("H:mm") 5:50
DateTime.Now.ToString("h:mm tt") 5:50 AM
DateTime.Now.ToString("HH:mm:ss") 05:50:06
DateTime.Now.ToString("yyyy MMMM") 2015 May
检查是否完全理解时间格式:- 例如:
DateTime.Now.ToString("MM/dd/yyyy") 05/29/2015
DateTime.Now.ToString("dddd, dd MMMM yyyy") Friday, 29 May 2015
DateTime.Now.ToString("dddd, dd MMMM yyyy") Friday, 29 May 2015 05:50
DateTime.Now.ToString("dddd, dd MMMM yyyy") Friday, 29 May 2015 05:50 AM
DateTime.Now.ToString("dddd, dd MMMM yyyy") Friday, 29 May 2015 5:50
DateTime.Now.ToString("dddd, dd MMMM yyyy") Friday, 29 May 2015 5:50 AM
DateTime.Now.ToString("dddd, dd MMMM yyyy HH:mm:ss") Friday, 29 May 2015 05:50:06
DateTime.Now.ToString("MM/dd/yyyy HH:mm") 05/29/2015 05:50
DateTime.Now.ToString("MM/dd/yyyy hh:mm tt") 05/29/2015 05:50 AM
DateTime.Now.ToString("MM/dd/yyyy H:mm") 05/29/2015 5:50
DateTime.Now.ToString("MM/dd/yyyy h:mm tt") 05/29/2015 5:50 AM
DateTime.Now.ToString("MM/dd/yyyy HH:mm:ss") 05/29/2015 05:50:06
DateTime.Now.ToString("MMMM dd") May 29
DateTime.Now.ToString("yyyy’-‘MM’-‘dd’T’HH’:’mm’:’ss.fffffffK") 2015-05-16T05:50:06.7199222-04:00
DateTime.Now.ToString("ddd, dd MMM yyy HH’:’mm’:’ss ‘GMT’") Fri, 16 May 2015 05:50:06 GMT
DateTime.Now.ToString("yyyy’-‘MM’-‘dd’T’HH’:’mm’:’ss") 2015-05-16T05:50:06
DateTime.Now.ToString("HH:mm") 05:50
DateTime.Now.ToString("hh:mm tt") 05:50 AM
DateTime.Now.ToString("H:mm") 5:50
DateTime.Now.ToString("h:mm tt") 5:50 AM
DateTime.Now.ToString("HH:mm:ss") 05:50:06
DateTime.Now.ToString("yyyy MMMM") 2015 May
您可能会遇到,
en-en
是原始英语(如英语而非美式英语),它用前/后斜杠表示日期值,而美式日期符号通常使用破折号(-
)。如果你使用Excel,试着输入一个1月2日的带有破折号和斜杠的日期,你会看到不同的符号将数字翻转过来
您所经历的可能是.NET强制执行了正确的文化符号,但您仍然可以使用.toString(format)
设置日期格式,如@Md.\u Abdul\u Alim所述
您可能会发现,
en-en
是原始英语(如英语而非美式英语),用前/后斜杠表示日期值,而美式日期符号通常使用破折号(-
)。如果你使用Excel,试着输入一个1月2日的带有破折号和斜杠的日期,你会看到不同的符号将数字翻转过来
您所经历的可能是.NET强制执行了正确的文化符号,但您仍然可以使用.toString(format)
设置日期格式,如@Md.\u Abdul\u Alim所述
您需要更改服务器或本地计算机的日期设置 例如:设置-->时间和语言-->区域--> 格式:(此处您需要更改国家/地区) -->其他设置-->日期 您可以更改日期格式
祝您好运:)您需要更改服务器或本地计算机的日期设置 例如:设置-->时间和语言-->区域--> 格式:(此处您需要更改国家/地区) -->其他设置-->日期 您可以更改日期格式
祝你好运:)试试.ToString('d\M\yyyy')“格式仍然相同”是什么意思?你的代码只显示了一些区域性设置的定义;它没有告诉我们如何重现你遇到的任何问题。如果我运行你的代码,然后用类似于
Console.WriteLine(DateTime.Today)的东西显示日期;
,日期格式反映了您定义的设置。@JoeFarrell我的意思是我的日期时间仍然是d\M\yyyy
格式什么是“我的日期时间”"? 您尚未共享任何打印日期时间的代码,因此无法猜测您的区域性设置为何无法按预期工作。换句话说,在使用DateTime的任何地方,您都没有提供@JoeFarrell。例如:@Html.DevExpress().Label(s=>{s.Name=“dateCreated”s.Style.Add(HtmlTextWriterStyle.fontwweight,“bold”);s.Style.Add(HtmlTextWriterStyle.Color,“#80808080”)))。GetHtml()
只需使用.ToString试试(“d\M\yyyy”)什么是“格式仍然相同”的意思?您的代码只显示某些区域性设置的定义;它没有显示如何重现您遇到的任何问题。如果我运行您的代码,然后使用类似于Console.WriteLine(DateTime.Today)的内容显示日期;
,日期格式反映了您定义的设置。@JoeFarrell我的意思是我的日期时间仍然是d\M\yyyy
格式什么是“我的日期时间”?您没有共享任何打印日期时间的代码,因此无法猜测您的区域性设置为什么不能按预期工作。换句话说,您没有提供一个@JoeFarrell,无论何时使用日期时间。例如:@Html.DevExpress().Label(s=>{s.Name=“dateCreated”;s.Style.Add(HtmlTextWriterStyle.fontwweight,“粗体”);s.Style.Add(HtmlTextWriterStyle.Color,“#808080”);}.GetHtml()
我想我从来没有用破折号格式化过日期…这里是美式英语我从来没有用破折号格式化过日期…这里是美式英语我在看变化文化文化,当这可能是一个配置问题时我在看变化文化,当这可能只是一个配置问题时