网上看到的DateTime.TryParse(s, out dt)例子,一般是对YY-MM-DD的格式有效。这好像是默认的吧?现在我想让它能对MM-DD—YY也能转换。怎么办?例如:
DateTime dt;
DateTime.TryParse("02-01-09", out dt);
默认的情况会得到:02年1月9号;我想得到09年2月1号
DateTime dt;
DateTime.TryParse("02-01-09", out dt);
默认的情况会得到:02年1月9号;我想得到09年2月1号
string s,
IFormatProvider provider,
DateTimeStyles styles,
out DateTime result
)
怎么用MSDN没有详细的说明,郁闷!
DateTime.TryParse("02-01-09", System.Globalization.DateTimeFormatInfo.InvariantInfo, System.Globalization.DateTimeStyles.None, out dt)
IFormatProvider format = new CultureInfo( "en-US");
DateTime.TryParse("02-01-09", format, DateTimeStyles.None, out dt);
public static bool TryParse (
string s,
IFormatProvider provider,
DateTimeStyles styles,
out DateTime result
)
会出错!~
写了如下代码:
Microsoft.Office.Tools.Excel.NamedRange NamedRange1 =this.Controls.AddNamedRange(this.get_Range("A1", missing), "NamedRange1"); object value = NamedRange1.Value2; if (value != null)
{
if (value is double)
{
dtValue = DateTime.FromOADate((double)value);
}
else
{
DateTime.TryParse((string)value, out dtValue);
}
}出错!~求助!
配合CultureInfo以及Format来格式化你的日期 DateTime dt;
DateTime.TryParseExact("01/六月/09","dd/MMM/yy", new CultureInfo("zh-CN"), DateTimeStyles.None,out dt); 具体参考CultureInfo类
http://msdn.microsoft.com/zh-cn/library/system.globalization.cultureinfo(VS.80).aspx
以及http://msdn.microsoft.com/en-us/library/aa326719(VS.71).aspx
DateTime dt;
DateTime.TryParseExact("01/六月/09", "dd/MM/yy", new CultureInfo("zh-CN"), DateTimeStyles.None, out dt); 结果是:0001-1-1 0:00:00
这不对~
DateTime dt;
DateTime.TryParseExact("20/六月/08", "dd\\/MMM\\/yy", new CultureInfo("zh-CN"), DateTimeStyles.None, out dt);
MessageBox.Show(dt.ToString("yyyy-MM-dd"));