C# Convert.ToDateTime:如何设置格式
我使用convert,比如:C# Convert.ToDateTime:如何设置格式,c#,.net,datetime,C#,.net,Datetime,我使用convert,比如: Convert.ToDateTime(value) 但我需要将日期转换为“mm/yy”格式。 我在找这样的东西: var format = "mm/yy"; Convert.ToDateTime(value, format) 您可能应该使用或。它们允许您指定特定的格式。我个人更喜欢Try-版本,因为我认为它们可以为错误情况生成更好的代码。如果value是该格式的字符串,并且希望将其转换为DateTime对象,则可以使用静态方法: DateTime.ParseEx
Convert.ToDateTime(value)
但我需要将日期转换为“mm/yy”格式。我在找这样的东西:
var format = "mm/yy";
Convert.ToDateTime(value, format)
您可能应该使用或。它们允许您指定特定的格式。我个人更喜欢
Try
-版本,因为我认为它们可以为错误情况生成更好的代码。如果value
是该格式的字符串,并且希望将其转换为DateTime
对象,则可以使用静态方法:
DateTime.ParseExact(value, format, CultureInfo.CurrentCulture);
例如:
string value = "12/12";
var myDate = DateTime.ParseExact(value, "MM/yy", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None);
Console.WriteLine(myDate.ToShortDateString());
结果:
2012-12-01
DateTime
没有格式。该格式仅适用于将DateTime
转换为字符串的情况,这种情况会在表单、网页等上隐式显示值
查看日期时间的显示位置,并在那里设置格式(如果需要其他指导,也可以修改您的问题)。这样如何:
string test = "01-12-12";
try{
DateTime dateTime = DateTime.Parse(test);
test = dateTime.ToString("dd/yyyy");
}
catch (FormatException exc)
{
MessageBox.Show(exc.Message);
}
其中测试将等于“12/2012”
希望有帮助
请阅读。您可以使用Convert.ToDateTime。它显示在
DateTime
对象没有定义格式。您可以以一种格式输出数据时间,这就是您的意思吗?我尝试这样做:string value=“12/12”;format=“mm/yy”;然后datetime.paeseExact(值、格式、Cul..)=返回{01/01/2012 00:12:00}。为什么?所以DateTime.ParseExact(值,“mm/yy”,CultureInfo.CurrentCulture)代码>应该有效。我希望{01/12/12}或{12/12}datetime.paeseExact(“12/12”,“mm/yy”,Cul..)={01/01/2012 00:12:00};但我希望{01/12/12}或{12/12}@Refael您需要仔细阅读mm
是分钟,mm
是年。我想你的意思是mm
是月
DateTimeFormatInfo usDtfi = new CultureInfo("en-US", false).DateTimeFormat;
var result = Convert.ToDateTime("12/01/2011", usDtfi)