.NetCore源码解读 ZipFile 解压过程
2020-06-24 09:19
531 查看
.NetCore ZipFile 解压过程
在工作中我们遇到文件解压时,在采用ZipFile时只知道
ZipFile.ExtractToDirectory,但是不知道具体过程,对于输出结果往往也不知所云。现在就源码进行解读,了解解压过程,让我们对自己的代码更有自信心。
解压过程
- 读取压缩包
将指定路径文件打开为表示zip归档格式的压缩文件包 - 遍历压缩包的压缩文件
window包含文件和目录
linux只包含文件
- 创建解压文件存放目录
遍历压缩包的压缩文件,包含文件和目录(linux中所有文件都见做文件描述符,文件、目录、可执行程序等) - 将数据写入文件
压缩包的压缩文件
window
获得的文件包含目录和文件,多级目录为多个
ZipArchiveEntry,且多级目录分隔符为“/”。
linux
linux中不存在目录
ZipArchiveEntry,只包含文件的entry,此外文件目录分隔符为“/”,在linux下不会单独创建文件,会把目录和文件名作为保存后的名字。
源码传送门
相关文章推荐
- .NetCore 解析Zip - 源码解读 ZipFile
- Hadoop源码解读-Job初始化过程
- [Java语言] java 中使用ZipInputStream或ZipFile解压ZIP文件!!
- C#第三方zip解压压缩工具,带事例源码
- mysql-5.7.14-win32.zip 解压版 安装过程
- ZipFile和ZipInputSteam解压zip文件
- 使用zipfile解压一个压缩了N次的zip文件
- 解压文件源码(需要引入ant.jar包,解决zip文件名为中文出现乱码问题)
- Spark源码解读(2)——Worker启动过程
- java解压zip或rar压缩文件(有源码和jar包以及对中文乱码的处理方法)
- Spring加载过程源码解读
- python用zipfile模块打包文件或是目录、解压zip文件实例
- MySQL zip解压版安装过程及问题
- JAVA ZipFile 解压zip
- Linux内核源码分析--内核启动之(1)zImage自解压过程(Linux-3.0 ARMv7)
- Tomcat启动过程源码解读
- C#中关于zip压缩解压帮助类的封装 附源码下载
- Spark源码的编译过程详细解读(各版本)(博主推荐)
- Android实现下载zip压缩文件并解压的方法(附源码)
- python 加压/解压 zip(zipfile模块的使用)