今天我在使用 DateTime.Now.ToString("yyyy/MM/dd") 输出的结果是 2006-03-16 而不是我想要的 2006/03/16,都快把我郁闷的不行了。后来用了一个方法解决:DateTime.Now.ToString("yyyy/MM/dd").Replace("-", "/"),这种方法虽然可以解决问题(后面证明这个方法并不太管用),但感觉总是很别扭,后来请教了韩磊老大,恰巧他也遇到过同样的问题,原因就是在 ToString() 的时候这个方法是直接以系统的日期格式设置输出的,所以这里会出现这种莫名基妙的错误,解决的办法就是启用 DateTime.ToString() 的第二个参数,忽略系统时间格式设置:
DateTime.Now.ToString("yyyy/MM/dd", System.Globalization.DateTimeFormatInfo.InvariantInfo);