Ank*_*bey 1 .net c# datetime parsing
这有很多线程,但我仍然被阻止在以下方面:
是)我有的:
我正在尝试构建windows phone App,它将选择一个人的出生日期
代码背后:
string dateString = "";
DateTime dt = DateTime.Now;
if (value != null && DateTime.TryParse(value.ToString(), culture, DateTimeStyles.None, out dt))
{
if (dt.Equals(DateTime.MinValue))
{
//dateString = "mm/dd/yyyy";
return "";
}
else
return dt.ToShortDateString();
}
else
return dateString;
}
Run Code Online (Sandbox Code Playgroud)
我需要的:
我希望它解析任何应该是文化独立的日期格式.
我尝试了什么:
1.我尝试使用CultureInfo.InvariantCultute,CultureInfo.CurrentCulture
2.使用ExactParser如下:
string[] formats = {"M/d/yyyy h:mm:ss tt", "M/d/yyyy h:mm tt", "d/M/yyyy hh:mm:ss tt", "dd/MM/yyyy hh:mm:ss tt", "d/M/yyyy" , "dd/MM/yyyy" , "M/d/yyyy" ,"MM/dd/yyyy",
"MM/dd/yyyy hh:mm:ss", "M/d/yyyy h:mm:ss", "dd/MM/yyyy hh:mm:ss", "d/M/yyyy h:mm:ss",
"M/d/yyyy hh:mm tt", "M/d/yyyy hh tt", "d/M/yyyy hh:mm tt", "d/M/yyyy hh tt",
"M/d/yyyy h:mm", "M/d/yyyy h:mm", "d/M/yyyy h:mm", "d/M/yyyy h:mm",
"MM/dd/yyyy hh:mm", "M/dd/yyyy hh:mm","dd/MM/yyyy hh:mm", "dd/M/yyyy hh:mm"};
if (value != null && DateTime.TryParseExact(value.ToString(), format, CultureInfo.InvariantCulture, DateTimeStyles.None, out dt))
Run Code Online (Sandbox Code Playgroud)
但这太硬了,不会涵盖几个案例.
有没有办法以任何格式选择DOB?
任何帮助,将不胜感激.谢谢!!
对不起,但似乎不可能,因为日期时间可能不明确,这就是为什么误解为例如
"01/02/03" 是
01 Feb 2003 (Russia)
02 Jan 2003 (USA)
03 Feb 2001 (China)
Run Code Online (Sandbox Code Playgroud)
见http://en.wikipedia.org/wiki/Date_format_by_country
| 归档时间: |
|
| 查看次数: |
8019 次 |
| 最近记录: |