首页 / 知识
帮助从.Net创建Zip文件并从Java读取文件
2023-04-15 20:27:00

Help in creating Zip files from .Net and reading them from Java我正在尝试从.Net创建一个Zip文件,该文件可以从Java代码读取。 我已经使用SharpZipLib创建了Zip文件,但是如果生成的文件根据#ZipLib库的CheckZip函数是否有效并且可以通过WinZip或WinRar成功解压缩,则在尝试对其进行解压缩时总是会出现错误在Java中使用Java.Utils.Zip类。 问题似乎是在SharpZipLib写的错误标题中,我还在SharpDevelop论坛上发布了一个问题,但没有结果(请参见http://community.sharpdevelop.net/forums/t/8272.aspx信息),但没有结果。 有人使用.Net压缩Zip文件并使用Java.Utils.Zip类将其解压缩的代码示例吗? 问候 我使用了DotNetZip库,它似乎可以正常工作。典型代码:
在使用SharpZipLib(最新版本)创建zip并使用java.utils.zip提取时,我遇到了同样的问题。 这是解决我问题的原因。我不得不强制排除zip64用法:
您不想在.NET中使用ZipPackage类-它不是一个标准的zip模型。很好,但是它假定文件中有特定的结构,带有带有众所周知名称的清单,依此类推。 ZipPackage似乎已针对Office文档和XPS文档进行了优化。 如果您正在处理通用ZIP文件并需要良好的互操作性,那么第三方库(例如http://www.codeplex.com/DotNetZip)可能是更好的选择。 DotNetZip生成的文件几乎可以与所有内容进行互操作,包括Java的java.utils.zip。但是请小心使用Java不支持的功能,例如ZIP64或Unicode。我认为ZIP64仅对非常大的档案有用,而Java目前尚不支持。 Java以特定的方式支持Unicode,因此,如果您使用DotNetZip生成基于Unicode的ZIP文件,则只需遵循一些规则,它将可以正常工作。 无法使用SharpZipLib,但是您可以尝试使用ZipPackage类System.IO.Packaging创建zip文件,而无需使用第3部分库(需要.NET 3)。 在Linux上解压缩SharpZipLib压缩文件时,我遇到了类似的问题。我想我已经解决了它(现在我可以在Linux和Mac上工作,我已经对其进行了测试),请查看我的博客文章:http://igorbrejc.net/development/c/sharpziplib-making-it-work-for-linuxmac <铅> 要判断它是否确实是符合标准的ZIP文件,请参阅PKZIP的.ZIP文件格式规范。 对于我而言,使用SharpZipLib可以在Windows Mobile设备上创建ZIP并使用WinZip或Windows XP的内置压缩文件夹功能打开它们没有问题,也可以使用SharpZipLib在桌面上生成ZIP并进行处理在移动设备上使用我自己的ZIP提取实用程序(基本上是zlib的package器)对它们进行处理。 |
最新内容
相关内容
linux复制命令文件?
linux复制命令文件?,系统,文件,命令,目录,基本知识,源文件,目标,文件夹,路径,选项,linux怎么复制命令cp命令:用于复制文件或目录。语法如下:`baslinux下文件均分命令?
linux下文件均分命令?,管理,情况,系统,工作,信息,地址,命令,目录,单位,设备,Linux文件系统操作命令1、cat:可以显示文件的内容(经常和more搭配linux查文件数量命令?
linux查文件数量命令?,系统,数据,电脑,命令,文件,信息,代码,对比,软件,第三,linux系统如何查看自己创建了多少文件夹为了实验,我打算总共创建 7改文件名linux命令?
改文件名linux命令?,名字,软件,文件,命令,位置,系统,文件名,目录,指令,方面,linux下对文件重命名是什么命令Linux重命名文件是rename。Linux中linux拼接文件命令?
linux拼接文件命令?,文件,数据,命令,代码,时间,信息,系统,情况,管理,标准,Linux文件相关命令top:显示当前进程的系统资源使用情况。kill:终止指linux文件常用命令?
linux文件常用命令?,工作,地址,信息,系统,命令,目录,标准,情况,管理,常用命令,linux常用命令及用法linux系统常用操作命令如下:ls:全拼list,功能文件写入linux命令?
文件写入linux命令?,文件,命令,状态,系统,名称,时间,首次,数据,数字,内容,在linux命令行下如何将指定的几行内容写入到一个文件中?1、首先连接linux命令写满文件?
linux命令写满文件?,地址,工作,命令,系统,管理,文件,目录,标准,电脑,信息,Linux命令linux系统常用操作命令如下:ls:全拼list,功能是列出目录的内文件夹排序linux命令?
文件夹排序linux命令?,系统,数字,信息,工作,时间,命令,管理,设备,单位,工具,基本linux命令1、linux系统常用操作命令如下:ls:全拼list,功能是列出linux命令和库函数?
linux命令和库函数?,系统,标准,管理,地址,服务,库函数,环境,平台,第一,状态,1.linux系统调用和库函数调用的区别系统调用和库函数在执行的效果linux打开文件夹命令?
linux打开文件夹命令?,工作,系统,信息,命令,图片,文件,管理,发行,名字,名称,请问Linux下通过命令行怎样打开文件xdg-open:这个命令可以打开任何linux上清空文件命令?
linux上清空文件命令?,系统,命令,文件夹,名字,档案,文件,目录,方法,终端,指令,linux删除文件的方法linux删除文件夹的方法有两种:rmdir命令和rm