c# NPOI 如何在指定单元格导入导出图片
- 作者: 抵扺
- 来源: 51数据库
- 2021-06-30
intro
我维护了一个 npoi 的扩展(weihanli.npoi),主要用来导入导出 excel 数据,最近有网友提出了导入 excel 的时候解析图片的需求,于是就有了本文的探索
导入excel 时解析图片
xls 和 xlsx 的 api 稍有不同,详细可以直接参考以下代码,实现代码如下:
cellposition 是一个自定义的结构体,表示当前单元格的位置,源码如下:
根据上面的代码,我们就可以获取到获取到所有的图片以及图片的所在位置,这样根据单元格位置去找图片信息的时候就会很方便了
导出 excel 时设置图片
实现代码如下:
通过上面的代码我们就可以在指定的单元格设置图片,目前没有支持单元格合并操作,有需要自己进行修改
weihanli.npoi
weihanli.npoi 在 1.15.0 版本中增加了图片导入导出的支持,使用示例可以参考下面的单元测试:
导入时会自动将 byte[] 类型的属性尝试获取对应的单元格位置的图片,如果在对应的位置找到了图片就能够读取到图片的字节数组信息映射到 model 里的字节数组属性
除此之外,还支持直接导入的时候将图片信息 map 到 ipicturedata 属性上,但是觉得还是字节数组更通用一些,如果对此感兴趣可以参考项目源码以及单元测试
more
感谢 @zeguangzhang94 童鞋提出的需求和帮忙测试~
如果你也有类似的读取指定单元格的图片或者在指定单元格插入图片的需求,可以试一下上面的方法,希望对你有帮助,可以直接引用我的类库或者直接拷贝源码到自己的项目里使用
references
- https://github.com/weihanli/weihanli.npoi
- https://github.com/weihanli/weihanli.npoi/blob/dev/src/weihanli.npoi/npoiextensions.cs#l1143
- https://github.com/weihanli/weihanli.npoi/issues/99
以上就是c# npoi 如何在指定单元格导入导出图片的详细内容,更多关于npoi 在指定单元格导入导出图片的资料请关注其它相关文章!
推荐阅读
- C#通过fleck实现wss协议的WebSocket多人Web实时聊天(附源码)
- 团队城市未满足要求:MSBuildTools12.0_x86_Path 存在
- 使用 MSBuild.exe 在发布模式下构建 C# 解决方案
- 当我发布 Web 应用程序时,AfterPublish 脚本不运行
- 构建时 T4 转换的产品仅在下一个构建中使用
- ASP.NET Core Application (.NET Framework) for Windows x64 only error in project.assets.json
- 新的 .csproj 格式 - 如何将整个目录指定为“链接文件"到子目录?
- 如何将条件编译符号(DefineConstants)传递给 msbuild
- MSBuild 支持 Visual Studio 2017 RTM 中的 T4 模板
- NuGet 包还原找不到包,没有源
热点文章
团队城市未满足要求:MSBuildTools12.0_x86_Path 存在
0
使用 MSBuild.exe 在发布模式下构建 C# 解决方案
0
当我发布 Web 应用程序时,AfterPublish 脚本不运行
0
构建时 T4 转换的产品仅在下一个构建中使用
0
ASP.NET Core Application (.NET Framework) for Windows x64 only error in project.assets.json
0
新的 .csproj 格式 - 如何将整个目录指定为“链接文件"到子目录?
0
如何将条件编译符号(DefineConstants)传递给 msbuild
0
MSBuild 支持 Visual Studio 2017 RTM 中的 T4 模板
0
NuGet 包还原找不到包,没有源
0
使用 C# 6.0 功能运行 TFS 构建
0
