请问如何将字符串Aug 1 2007 12:05:12:000AM转换成DateTime格式?
最近在项目中遇到Aug 1 2007 12:05:12:000AM这种时间格式,要求转换成DATETIME格式,导入ACCESS数据库。请问用C#应该如何转换?
[解决办法]
本身“上午12点,下午12点”本身就有不好理解 //一般口语是:午夜12点,中午12点,但老外不这样说(他们说midnights 午夜)
就象我们说星期一、星期二一样,他们没有1、2的说法
这是文化差异
计算机语言是老外设计的,你就得按老外的思维理解
测试数据控制在00:00:00-11:59:59之间
"MMM d yyyy hh:mm:ss:ffftt""Aug 31 2007 12:05:12:000PM" //2007-8-31 12:05:12"Aug 31 2007 12:05:12:000AM" //2007-8-31 0:05:12
[解决办法]
谁告诉你的
Aug 31 2007 12:05:12:000PM 转换后应该是 2007-09-01 00:05:12
你又从哪里看到
Aug 31 2007 12:05:12:000PM 和 Aug 31 2007 12:05:12:000AM转换出来都是一样的了
Aug 31 2007 12:05:12:000AM 转换为24小时制应该是 Aug 31 2007 00:05:12:000
Aug 31 2007 12:05:12:000PM 转换为24小时制应该是 Aug 31 2007 12:05:12:000
先做过测试再说
DateTime dt1 = DateTime.ParseExact("Aug 31 2007 12:05:12:000AM", "MMM d yyyy hh:mm:ss:ffftt", CultureInfo.GetCultureInfo("en-US"));DateTime dt2 = DateTime.ParseExact("Aug 31 2007 12:05:12:000PM", "MMM d yyyy hh:mm:ss:ffftt", CultureInfo.GetCultureInfo("en-US"));MessageBox.Show(dt1.ToString("yyyy-MM-dd HH:mm:ss:fff") + "\n" + dt2.ToString("yyyy-MM-dd HH:mm:ss:fff"));