dotnet OpenXML 解压缩文档为文件夹工具

做 Office 解析,是需要进行不断的测试才能了解 OpenXML 里面的属性的作用。根据 Ecma 376 的定义,文档其实只是一个压缩文件,可以使用压缩工具进行解压缩。但是我需要不断进行修改文档里面的属性,然后用 Office 打开,测试属性的效果,此时就需要有一个工具用来提升效率

工具的作用就是将 Office 文档,包括 Word 的 docx 和 PPT 的 pptx 和 Excel 的 xlsx 文档,解压缩文档到指定的文件夹里面

此时就可以使用编辑工具,如 SublimeText 或 VisualStudio 或 NotPad++ 等工具编辑 Office 文档的文件

编辑完成之后,可以通过工具将文件夹压缩为 Office 文档,使用 Office 打开,此时就可以看到属性的效果

工具在 GitHub 上完全开源,请看 https://github.com/dotnet-campus/dotnetCampus.OfficeDocumentZiper

使用方法是通过 dotnet 工具安装

dotnet tool isntall -g dotnetCampus.OfficeDocumentZipper

安装完成之后,可以使用命令行开启,如下面代码

OfficeDocumentZipper

如果不想写一个命令行,想要通过一个批处理启动,可以新建一个 x.bat 文件,添加下面代码

dotnet tool update -g dotnetCampus.OfficeDocumentZipper

OfficeDocumentZipper

注意在 bat 文件里面使用 update 代替 install 这样每次打开都是最新版本

这个工具的界面很简单,理论上你看界面就能使用

这个工具需要填写需要解压缩的 Office 文档的文件路径,以及解压缩到的文件夹路径。点击 UnZip 就是将 Office 文档解压缩到文件夹,如果文件夹存在,那么将会覆盖原有的文件夹。为什么这样设计?原因是我使用 SublimeText 打开了文件夹里面的 Part 文档,此时我不知道在 Office 上做对应的设置的行为,于是我就在工具里面点击 Open 打开 Office 文档,然后在 Office 里面编辑保存一下,此时文档的内容更改了。于是点击 UnZip 可以覆盖原有文件夹内容,我只需要让 SublimeText 自动刷新就可以看到在 Office 的更改的内容

在通过编辑工具修改了解压缩之后的文件之后,可以通过工具压缩为新的 Office 文档。每次都会创建新的 Office 文档文件

为什么每次都创建新的文档文件?原因是之前的 Office 文件也许在被打开,此时写入会失败,同时多个版本的 Office 文件方便对比,这样就知道多个版本更改的属性的作用

打开 Office 文档需要你本地安装了 Office 才能打开

这是一个 WPF 的 dotnet tool 工具,因此如果你不在 Windows 系统运行,你需要使用 Wine 才能运行

如果你有任何问题,都可以在 github 提 Issus 告诉我,当然,我也欢迎小伙伴贡献代码

我写了很多 Office 解析相关的博客,请看 Office 使用 OpenXML SDK 解析文档博客目录

在 SublimeText 打开 Office 的解压缩的 Part 文件,都是没有格式化的文件,可以安装 Indent XML 插件格式化

我搭建了自己的博客 https://blog.lindexi.com/ 欢迎大家访问,里面有很多新的博客。只有在我看到博客写成熟之后才会放在csdn或博客园,但是一旦发布了就不再更新

如果在博客看到有任何不懂的,欢迎交流,我搭建了 dotnet 职业技术学院 欢迎大家加入

如有不方便在博客评论的问题,可以加我 QQ 2844808902 交流

知识共享许可协议
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。欢迎转载、使用、重新发布,但务必保留文章署名林德熙(包含链接:http://blog.csdn.net/lindexi_gd ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我联系。

lindexi_gd CSDN认证博客专家 C# WPF UWP 微软最具价值专家
我是微软Windows应用开发方向的最具价值专家,欢迎访问我博客blog.lindexi.com里面有大量WPF和UWP博客
已标记关键词 清除标记
【为什么还需要学习C++?】 你是否接触很多语言,但从来没有了解过编程语言的本质? 你是否想成为一名资深开发人员,想开发别人做不了的高性能程序? 你是否经常想要窥探大型企业级开发工程的思路,但苦于没有基础只能望洋兴叹?   那么C++就是你个人能力提升,职业之路进阶的不二之选。 【课程特色】 1.课程共19大章节,239课时内容,涵盖数据结构、函数、类、指针、标准库全部知识体系。 2.带你从知识与思想的层面从0构建C++知识框架,分析大型项目实践思路,为你打下坚实的基础。 3.李宁老师结合4大国外顶级C++著作的精华为大家推出的《征服C++11》课程。 【学完后我将达到什么水平?】 1.对C++的各个知识能够熟练配置、开发、部署; 2.吊打一切关于C++的笔试面试题; 3.面向物联网的“嵌入式”和面向大型化的“分布式”开发,掌握职业钥匙,把握行业先机。 【面向人群】 1.希望一站式快速入门的C++初学者; 2.希望快速学习 C++、掌握编程要义、修炼内功的开发者; 3.有志于挑战更高级的开发项目,成为资深开发的工程师。 【课程设计】 本课程包含3大模块 基础篇 本篇主要讲解c++的基础概念,包含数据类型、运算符等基本语法,数组、指针、字符串等基本词法,循环、函数、类等基本句法等。 进阶篇 本篇主要讲解编程中常用的一些技能,包含类的高级技术、类的继承、编译链接和命名空间等。 提升篇: 本篇可以帮助学员更加高效的进行c++开发,其中包含类型转换、文件操作、异常处理、代码重用等内容。
©️2020 CSDN 皮肤主题: 终极编程指南 设计师:CSDN官方博客 返回首页