.net NPOI Excel导入:时间格式2022/5/26导入变成26-5月-2022

1、问题由来

在做一个导入的需求时,测试导入模板,无论导入模板里的日期设置成何种日期格式到代码中都会提示有不正确的格式化数据,加断点调试发现,导入的日期如:Excel表格中是2022/5/26,断点看到的却是26-5月-2022

2、解决方案

网上查询了几种解决方案,有导入的数据列格式判断转换,日期格式强转等等,都没什么效果,最后解决的方法如下:

// NPOI导入日期格式处理
string mytime = dateStr.Trim(); // dateStr为Excel导入的日期值
IFormatProvider culture = new CultureInfo("zh-CN", true);
string[] expectedFormats = { "dd-M月-yyyy" };
DateTime dateTime;
if(DateTime.TryParseExact(mytime, expectedFormats, culture, DateTimeStyles.AllowInnerWhite, out dateTime))
{
    mytime = dateTime.ToString("yyyy-MM-dd");
}
else
{
    mytime = dateStr.Trim();
}
// 新的 mytime 即为处理后的导入日期格式化后的字符串值

3、参考文档

1)C# NPOI 读取日期格式数据不准确问题

以上就是.net NPOI Excel导入:时间格式2022/5/26导入变成26-5月-2022的介绍,做此记录,如有帮助,欢迎点赞关注收藏!

posted @   GoodTimeGGB  阅读(93)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
欢迎阅读『.net NPOI Excel导入:时间格式2022/5/26导入变成26-5月-2022』
点击右上角即可分享
微信分享提示