C# 将外语字符串转换为日期
我有以下意见: 2014年2月27日C# 将外语字符串转换为日期,c#,asp.net,string,localization,C#,Asp.net,String,Localization,我有以下意见: 2014年2月27日 2013年11月14日 2013年11月7日 我想将它们全部转换为日期字段,如下所示: 27-02-2014 14-03-2013 17-11-2013 我尝试过这种方法:DateTime enteredate=DateTime.Parse(s)但它不工作,错误消息为: 该字符串未被识别为有效的日期时间。有一个未知的问题 从索引3开始的单词 它显示为荷兰语,您可以通过将new CultureInfo(“nl-nl”)传递到DateTime来解析它。Parse
2013年11月14日
2013年11月7日 我想将它们全部转换为日期字段,如下所示: 27-02-2014
14-03-2013
17-11-2013 我尝试过这种方法:
DateTime enteredate=DateTime.Parse(s)代码>但它不工作,错误消息为:
该字符串未被识别为有效的日期时间。有一个未知的问题
从索引3开始的单词
它显示为荷兰语,您可以通过将new CultureInfo(“nl-nl”)
传递到DateTime来解析它。ParseExact
类似于:
string str = "27 februari 2014";
DateTime dt = DateTime.ParseExact(str, "d MMMM yyyy",
new System.Globalization.CultureInfoCultureInfo("nl-NL"));
使用单<代码> d>代码>同时考虑单日和双日日部分。
要获取格式化输出,请使用:
string formattedDate = dt.ToString("dd-MM-yyyy", System.Globalization.CultureInfoCultureInfo.InvariantCulture);
允许您提供一个CultureInfo,这可能就足够了。如果没有,而且你只有一门外语,你可以简单地用正确的英语单词替换这些单词。你知道什么是CultureInfo吗?系统。全球化
我得到了这个错误:文化“nl”是一种中立的文化。它不能用于格式化和解析,因此不能设置为线程的当前区域性。@Xarxas,您是如何得到此错误的?您是否试图将当前区域性设置为nl
,只需在DateTime中使用它。ParseExact
yes to nl,这是代码:string str=“27 februari 2014”;DateTime dt=DateTime.ParseExact(str,“dd-MMMM-yyyy”,新文化信息(“nl”);字符串formattedDate=dt.ToString(“dd-MM-yyy”,CultureInfo.InvariantCulture);响应。写入(格式化日期);