首页 > 编程语言 >[问题记录] C# 使用NPOI操作Excel模版写入数据 - 生成文件打开时提示 "发现 XXX.xlsx 中的部分内容有问题..."

[问题记录] C# 使用NPOI操作Excel模版写入数据 - 生成文件打开时提示 "发现 XXX.xlsx 中的部分内容有问题..."

时间:2023-12-22 15:33:09浏览次数:41  
标签:文件 C# 模版 XXX Excel NPOI 问题 打开

解决方案:

1.先确保原来的模版文件打开是正常的,没有提示要恢复

2.用Office打开这个模版文件,另存为一个文件。用这个文件来作为模版使用。

 

问题描述:

使用C# NPOI 操作Excel模版 (模版用office打开是正常的),写入数据 , 导出的文件打开时提示是否尝试恢复 ,点击 “是” 后 ,发现Excel内的样式不见了。

在网上找了下关于这方面的问题,尝试之后(NPOI降版本,代码修改ToArray()),并不能解决问题。

 

 后面翻到关于Excel的有XML错误的问题 (把文件改成.zip,用解压缩的方式,可以看到xml文件,然后修复有节点没有配对的方法)。

当然,写代码肯定不会这样干,不过这给了我一个提示,那就是文件本身有问题,而不是代码问题。

补充一下,WPS打开是正常的,用微软的Office才会提示问题。当然,这个要考虑具体环境,刚好这边都是用微软Office的,所以还是得解决文件问题。

换个角度一想,既然使用这个文件模版生成的文件有问题,那把这个文件模版换掉就好了吧?那怎么换呢?

我想了下,既然每次都要生成的文件都提示要恢复,如果我把文件模版修复正常,那生成的文件应该都会正常吧?

所以,方向就变成修复文件模版了,我用最简单的方式,打开原来的文件模版,另存为一个新的文件,然后用这个新的文件作为模版,再次使用代码运行,生成的文件都没有问题了。

后面同事告诉我,原来这是WPS做的模版,应该是因为这个,搞得NPOI操作文件后产生问题吧。

 

标签:文件,C#,模版,XXX,Excel,NPOI,问题,打开
From: https://www.cnblogs.com/WikiChen/p/17921704.html

相关文章

  • cv表格抓取
    "cv表格抓取"可能指的是使用OpenCV库来识别和提取图像中的表格数据。这通常涉及以下步骤¹²:灰度化:将彩色图像转换为灰度图像。二值化:将图像转换为只有黑白两种颜色的图像,以便于处理。识别横线和竖线:使用形态学操作(如膨胀和腐蚀)来识别图像中的横线和竖线。计算交点:计算横线和竖线的......
  • ETLCloud与简道云结合,实现企业信息同步​
    ETLCloud介绍ETLCloud是一个集离线数据集成ETL、ELT、CDC实时数据集成、编排调度、数据服务API为一体的数据集成平台(DataOps),一站式满足企业的各种最为复杂的数据集成场景。提供私有化部署能力和云原生架构,满足企业不同发展阶段的业务需求。提供开放的组件市场,企业通过本平台可......
  • 重磅发布|OpenSCA SaaS全新上线
    从2021年12月发布至今,OpenSCA社区已走过了3个年头。有赖于小伙伴们的支持,社区才能从一颗种子成长为今天的参天大树:第一次GitHubStar数量破百第一次获得用户贡献第一个中国自有数字供应链标准SBOM格式DSDX.......这些都是我们宝贵的共同回忆。为了更好地支持大家,OpenSCASaaS全新上......
  • 世微 dc-dc升压IC 200W升压恒流电源管理芯片
    产品说明AP9196是一系列电路简洁的宽调光比升压调光恒流驱动器,适用于3-40V输入电压范围的LED照明领域。AP9196采用我司算法,可以实现高精度的恒流效果,输出电流恒流精度≤±3%,电压工作范围为5-40V,可以轻松满足锂电池及中低压的应用需求,输出耐压仅由MOS耐压决定。芯片内部有本司的高......
  • 聊一聊 C# 线程切换后上下文都去了哪里
    一:背景1.讲故事总会有一些朋友是不是问一个问题,在Windows中线程做了上下文切换,请问被切的线程他的寄存器上下文都去了哪里?能不能给我挖出来?这个问题其实比较底层,如果对操作系统没有个体系层面的理解以及做过源码分析,其实很难说明白,这篇我们就从.NET高级调试的角度试着分析一......
  • Unity 捕获C++ dll的Crash
    转载:C#程序调用第三dll引起崩溃,但是try无法捕捉到第三方dll的异常-.net程序调试-少有人走的路(skcircle.com) 问题:一个第三方的dll,调用它的函数会引起程序崩溃,但是try却无法捕捉到此异常。 因为没有Try到异常,那么一个未处理的异常,会导致整个进程终止。这就是程序会崩溃的原......
  • 安卓手机如何打开ics文件?ics格式文件用什么软件打开?
    什么是ics格式文件?Ics格式文件是什么呢?其实ics格式文件是一种用于保存和交换日历信息的标准格式,它通常可以保存事件的名称、时间等信息,有不少日历、待办软件在导出数据的时候,都是以ics文件导出的。有不少网友目前使用的是小米、OPPO等安卓手机,于是就问,安卓手机如何打开ics文件呢?I......
  • MacOS - 安装多个xcode版本,选择默认启动版本
    1、有时候xcode发布新版本,但是我们项目正要上线,来不及升级xcode版本,怕带来未知的风险,这时候就可以安装多个xcode版本,下载地址https://developer.apple.com/download/more/1.2然后登陆appledeveloper,搜索xcode,即可下载最新版本  1.3下载完成后,将当前低版本的xcod......
  • syslog:action 'action-8-builtin:omfwd' suspended (module 'builtin:omfwd')
    参考文档Syslog-FluentBit:OfficialManualLinux-rsyslogd:操作“action-3-builtin:omfwd”已挂起-堆栈溢出(stackoverflow.com)背景介绍在研究FluentBit做日志数据采集端时看到官方实例syslogtcp方式采集后进行本地尝试,结果出现了如下错误:action'action-8-builtin:......
  • Manjaro安装Redis和Redis-cli的使用
    一.Redis安装要在Manjaro上安装Redis,可以按照以下步骤进行操作:打开终端。使用以下命令更新系统软件包列表:sudopacman-Syu通过运行以下命令安装Redis:sudopacman-Sredis安装完成后,使用以下命令启动Redis服务:sudosystemctlstartredis可以使用以下命令......