在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
最近项目导入数据日期变成了这样
这是因为转换成了美国时间
美国时间格式:MM/dd/yyyy
英国时间格式:dd/MM/yyyy
避免导入出现这个问题的话就需要将excel文档单元格样式设置一下
下面是将美国时间转换本地时间的代码
用数组的话是因为格式跟字符串必须完全正确,所以把所有有可能出现的格式都写上 我这里简单的写了几个匹配我业务的格式
string[] format = { "d/M/yyyy", "d/MM/y", "d/M/y H:m", "d/M/yyyy H:m" };
方式一
var dt = DateTime.ParseExact("14/9/2010 21:41", format, System.Globalization.CultureInfo.GetCultureInfo("en-US"), System.Globalization.DateTimeStyles.AssumeLocal);
方式二
TimeSpan serverOffset = TimeZoneInfo.Local.GetUtcOffset(DateTimeOffset.Now);
try
{
DateTimeOffset clientTime = DateTimeOffset.ParseExact("14/9/2010 21:41", format, System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.AssumeLocal);
DateTimeOffset serverTime = clientTime.ToOffset(serverOffset);
DateTime date=serverTime.DateTime;
}
catch (Exception ex)
{
}
更多时间转换问题可以看微软的文档
|
请发表评论