【C# DateTime】如何一次性修改DateTime的默认ToString格式
【问题】网站 项目里经常用到DateTime类型变量,要求所有日期时间类型格式标准为“yyyy-MM-dd HH:mm:ss”,但默认Tostring格式为 yyyy-M-d H:m:s ,没有前置0,
需要修改
【分析】 1、修改代码里所有DateTime类型的Tostring为 ToString("yyyy-MM-dd HH:mm:ss"),不方便
2、找见统一的修改地方,
Thread.CurrentThread.CurrentCulture = new CultureInfo("zh-CN", true) { DateTimeFormat = { ShortDatePattern = "yyyy-MM-dd", FullDateTimePattern = "yyyy-MM-dd HH:mm:ss" }; 发现不起作用
经分析DateTimeFormat 类的属性,发现 LongTimePattern 起作用
【结论】增加 LongTimePattern 属性
//登录的时候就统一格式化,现在很多程序地方直接对时间类型的变量直接做字符处理 //要一个个找出来比较麻烦,现在统一格式化回到一个时间格式上来。 //SystemTime.SetDateTimeFormat("yyyy-MM-dd", "yyyy-MM-dd", "HH:mm:ss"); Thread.CurrentThread.CurrentCulture = new CultureInfo("zh-CN", true) { DateTimeFormat = { ShortDatePattern = "yyyy-MM-dd", FullDateTimePattern = "yyyy-MM-dd HH:mm:ss", LongTimePattern = "HH:mm:ss" } };
浙公网安备 33010602011771号