gpt4 book ai didi

C# - 日期/时间格式化

转载 作者:行者123 更新时间:2023-11-30 19:16:53 24 4
gpt4 key购买 nike

使用 C#,我尝试将日期格式化为以下字符串格式:YYYYMMDD_HHMM.xlsx

这是我的代码:

DateTime.Today.AddDays(0).ToString("yyyymmdd") + "_" + DateTime.Today.AddDays(0).ToString("hhmm")

这是我的输出:

20130027_1200.xlsx

月份不正确,时间也不正确。

最佳答案

您使用的是 mm,它是分钟,而不是月 - 您正在尝试使用 DateTime.Today 打印时间 ,它总是在一天开始时返回午夜。

也不清楚为什么要添加 0 天。我会使用:

DateTime now = DateTime.Now;
string name = now.ToString("yyyyMMdd'_'HHmm'.xlsx'");

('_ 的引用并不是绝对必要的,但我个人认为采用引用所有非格式说明符的方法是最简单的.)

或者:

DateTime now = DateTime.Now;
string name = string.Format("{0:yyyyMMdd}_{0:HHmm}.xlsx", now);

请注意使用 HH 而不是 hh 来获得 24 小时制而不是 12 小时制。

此外,根据您的要求,考虑使用 UtcNow 而不是 Now。请注意,在夏令时转换前后,时钟会倒退或前进,因此您最终可能会得到重复的文件名。

另请注意我如何在我的代码中使用 DateTime.Now 一次 - 在您的原始代码中,您找到了两次当前日期,这可能会给出不同的每次调用的结果。

最后,您可能还想在格式化日期/时间时指定 CultureInfo.InvariantCulture - 否则,如果当前文化是默认不使用公历的文化,您可能不会获得您期望的结果。

关于C# - 日期/时间格式化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20807345/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com