草庐IT

ZipArchive

全部标签

php - Windows 上的 Zip 目录和 Linux 上的解压缩

我使用这段代码在Windows中创建zip文件$plugin_address="D:/processmaker-3.2.1-x/apps/processmaker/htdocs/cakephp/plugins";$rootPath=$plugin_address."/".$R;$zipFileName=$rootPath.'.zip';$zip=newZipArchive();$zip->open($zipFileName,ZipArchive::CREATE|ZipArchive::OVERWRITE);$files=newRecursiveIteratorIterator(newR

PHP 不会在 Windows 上提取 zip 文件 ER_OPEN

我正在为我的CMS构建模块安装程序,现在我在使用安装了XAMPPx32的Windows7x64时遇到了问题,出于某种原因,每当我运行我的代码时,PHP都会返回ER_OPEN错误代码(11),并且我知道目录是可写的,因为文件在上传时会被php移动到父级,这里是我的脚本if($_URL['form']=='sent'){$target_path=getcwd()."\\..\\Temp-uplds\\";$target_path=$target_path.time().basename($_FILES['installFile']['name']);if(move_uploaded_fil

Windows 10 powershell ise 压缩归档文件在 root .in .zip

使用Windows(10)powerShellise,是否可以压缩文件夹的内容,就像使用命令“Compress-Archive”一样,但不能将其封装在zip的根文件夹中?(获取压缩包根目录下的文件)例如:-myFolder{index.html,mycss.css,myConn.php}使用的命令:-DestinationPathC:\wamp64\www\myFolder\myZip.zip-PathC:\wamp64\www\myFolder实际结果在myZip.zip中:{-myFolder{index.html,mycss.css,myConn.php}}myZip.zip中的

php - 无法在 Windows 资源管理器中打开由 PHP Zip Archive 生成​​的 zip 文件

当我尝试打开由PHPZipArchive生成​​的zip文件时,出现警告显示"Windowscannotopenthefolder.TheCompressed(zipped)Folder'filename'isinvalid."erroropeninginWindowsExplorer.但我可以通过7-zip打开文件。由于某些原因,我必须确保zip文件可以通过Windows资源管理器打开。我生成zip文件时有什么问题吗?请帮忙!functioncreate_a_zip($files=array(),$dest='',$root_folder,$overwrite=false){if(f

PHP:ZipArchive::close():重命名临时文件失败:没有这样的文件或目录

我无法创建zip文件。它给了我这个错误。search没有结果。这是我的职责。functionCompressFile($fromExtractedFile){$archive=newZipArchive;if($archive->open($fromExtractedFile.".zip",ZipArchive::OVERWRITE|ZipArchive::CREATE)===TRUE){$archive->addFile($fromExtractedFile,'payload.csv');$archive->close();}else{thrownewException("Compr

c# - ZipArchive 给出数据损坏错误的意外结束

我正在尝试使用一些字节数组数据动态创建一个zip流,并通过我的MVC操作下载它。但是下载的文件在windows中打开时总是出现以下损坏的错误。当我尝试从7zxtract时出现此错误但请注意,从7z中提取的文件没有损坏。我正在使用ZipArchive,下面是我的代码。privatebyte[]GetZippedPods(IEnumerablepods,longconsignmentID){using(varzipStream=newMemoryStream()){//Createanarchiveandstorethestreaminmemory.using(varzipArchive=

c# - 如何在 C# 中从内存中的文件创建 ZipArchive?

是否有可能从内存中(而不是实际在磁盘上)的文件创建ZipArchive。以下是用例:IEnumerable中收到多个文件多变的。我想使用ZipArchive将所有这些文件压缩在一起.问题是ZipArchive只允许CreateEntryFromFile,它需要文件的路径,因为我只是在内存中有文件。问题:有没有办法使用“流”在ZipArchive中创建“条目”?,以便我可以直接将文件内容放入zip中?我不想先保存文件、创建zip(从保存文件的路径)然后删除单个文件。在这里,attachmentFiles是IEnumerableusing(varms=newMemoryStream()){

c# - 使用 System.IO.Compression 创建后无效的 zip 文件

我正在尝试创建一个包含一个或多个文件的zip文件。我使用的是.NETFramework4.5,更具体地说是System.IO.Compression命名空间。目标是允许用户通过ASP.NETMVC应用程序下载zip文件。正在生成zip文件并将其发送到客户端,但是当我尝试通过双击打开它时,出现以下错误:Windows无法打开该文件夹。压缩(zipped)文件夹……无效。这是我的代码:[HttpGet]publicFileResultDownload(){varfileOne=CreateFile(VegieType.POTATO);varfileTwo=CreateFile(VegieT

c# - 如何将文件添加到现有的 zip 存档

如何将一些文件(几乎总是一个.csv文件)添加到现有的zip文件中? 最佳答案 由于您使用的是.NET4.5,因此可以使用ZipArchive(System.IO.Compression)类来实现此目的。这是MSDN文档:(MSDN)。这是他们的示例,它只是写入文本,但您可以读入.csv文件并将其写出到您的新文件中。要仅复制文件,您可以使用CreateFileFromEntry,它是ZipArchive的扩展方法。using(FileStreamzipToOpen=newFileStream(@"c:\users\exampleus

php - 将文件添加到现有 ZIP 文件

编辑:下面回答了这个问题。如果您想像我一样压缩目录/文件夹,请参阅:HowtozipawholefolderusingPHP我有一个带有计时器的应用程序,可以自动从我的服务器下载ZIP文件。但是ZIP文件每天都在变化。当有人使用该应用程序时,应用程序用户将收到“550文件不可用”错误,因为ZIP文件被删除并再次添加(这是因为应用程序计时器每900毫秒执行一次)。因此,与其删除ZIP文件并使用新数据重新创建它,不如如何在不重新创建ZIP文件的情况下添加新数据?目前我用这个:$zip=newZipArchive;//Getrealpathforourfolder$rootPath=real