早上好,请看下面的代码,有没有办法让c#接受英国日期格式的日期?
{
class Program
{
static void Main(string[] args)
{
DateTime myValue = DateTime.Now;
DateTime myBirthday = DateTime.Parse("1977, 3, 30");
TimeSpan myAge = DateTime.Now.Subtract(myBirthday);
Console.WriteLine (myAge.TotalDays);
Console.ReadLine();
}
}
}
答案 0 :(得分:1)
使用 CultureInfo :
尝试此代码var str = "01/01/2016 00:00:00";
var date = DateTime.ParseExact(str, "MM/dd/yyyy HH:mm:ss", new CultureInfo("en-GB"));
var res = date.ToString("dd/MM/yyyy HH:mm:ss", new CultureInfo("en-GB"));
你的日期是英国格式。
答案 1 :(得分:0)
您可以通过文化解析:
var culture = "en-GB";
var date = DateTime.Parse(dateString, new CultureInfo(culture , false));
但这可以归结为.NET对英国日期格式的解释,但你可能不匹配,所以最好根据你的数据来做,例如:
var date = DateTime.ParseExact(dateString, "dd/MM/yyyy", CultureInfo.InvariantCulture);