DateTime.Now.ToString(" MM / DD / YYYY")包含不正确的月份

时间:2017-06-26 16:27:28

标签: c# excel date datetime office-interop

所以我一直在向列表中添加DateTime.Now.ToString("MM/DD/YYYY")(以及一堆其他数据),然后将这些列表写入Excel工作簿中的各个行。

这一切都很有效(这是我经常做的事情),除了月份。我尝试过三次出口,每次我得到一个不同的月份; 第一次56 / 26-17, 第二个2/26/2017, 和第三个14/26/2017 ....

2 个答案:

答案 0 :(得分:5)

请改用:

DateTime.Now.ToString("MM/dd/yyyy")

“MM”一个月。 “dd”好几天了。 “yyyy”一年。

“MM / DD / YYYY”格式错误:

Console.WriteLine(DateTime.Now.ToString("MM/DD/YYYY")) // prints "06/DD/YYYY"

答案 1 :(得分:2)

DateTime.Now.ToString("MM/dd/yyyy", CultureInfo.InvariantCulture);

如前所述,您需要以小写字母包含日期和年份的格式说明符,但作为附加内容,您还应指定文化变量以确保最终输出在日期部分之间包含“/”。没有这个文化参数,“/”可以替换为代码运行的系统文化的日期分隔符,如“ - ”。