求助:报表生成时ddMonyyyy-hhmm格式日期时间获取异常
解决报表生成时间戳格式问题
你的代码存在几个问题导致日期和年份无法正确获取,同时格式也不符合需求:
- 格式符使用错误:小写
mmm代表分钟相关标识,应该用大写MMM表示月份缩写 - 手动拼接小时分钟会出现单数字补零问题(比如9点显示为
9而非09) - 两次调用
DateTime.Now可能导致时间不一致(极端场景下) - 分隔符不符合
ddMonyyyy-hhmm的要求
直接用一次DateTime.Now.ToString()指定完整格式即可解决所有问题,代码如下:
// 需要引入using System.Globalization; string timeStamp = DateTime.Now.ToString("ddMMMyyyy-hhmm", CultureInfo.InvariantCulture); sFileName = sFileName + timeStamp + ".xls";
格式符说明:
dd:两位数字的日期(01-31)MMM:月份缩写(如Jan、Feb,使用CultureInfo.InvariantCulture确保不受系统区域设置影响)yyyy:四位数字的年份hh:12小时制的两位数字小时(01-12),如果需要24小时制请改用HHmm:两位数字的分钟(00-59)
内容的提问来源于stack exchange,提问作者user19110389
相关产品推荐
相关产品推荐

