没有找到合适的产品?
联系客服协助选型:023-68661681
提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:李显亮|2020-04-23 11:11:49.233|阅读 336 次
概述:在本文中还针对类似的情况,并提供了一些简单的方法来压缩文件或文件夹,并使用C#以编程方式创建ZIP存档。
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
ZIP档案是用来压缩和保持一个或多个文件或文件夹到一个单一的容器中。ZIP归档文件封装了文件和文件夹,并保存了它们的元数据信息。归档的最常见用法是减小用于存储或传输的文件的大小,并应用加密以提高安全性。
除文件压缩工具外,各种桌面和Web应用程序还使用自动压缩/提取功能来上载,下载,共享或加密文件。
Aspose.ZIP for .NET是用于标准ZIP格式的灵活文档压缩和存档操作API。API使.NET应用程序能够实现文件压缩/解压缩,文件存档以及文件夹和存档加密。
Aspose.Zip for .NET已升级至V20.3,如果你还没有用过Aspose.Zip可以点击这里下载最新版测试。
在本文中还针对类似的情况,并提供了一些简单的方法来压缩文件或文件夹,并使用C#以编程方式创建ZIP存档。本文将演示:
以下是通过将文件添加到ZIP归档文件来压缩文件的步骤:
下面的代码示例演示如何使用C#将文件添加到ZIP存档中。
// Create FileStream for output ZIP archive
using (FileStream zipFile = File.Open("compressed_file.zip", FileMode.Create))
{
// File to be added to archive
using (FileStream source1 = File.Open("alice29.txt", FileMode.Open, FileAccess.Read))
{
using (var archive = new Archive(new ArchiveEntrySettings()))
{
// Add file to the archive
archive.CreateEntry("alice29.txt", source1);
// ZIP file
archive.Save(zipFile);
}
}
}
如果要将多个文件添加到ZIP存档中,可以使用以下方式之一进行。
在此方法中,FileStream类用于使用Archive.CreateEntry(String,FileStream)方法将文件添加到ZIP存档中。下面的代码示例演示如何在C#中将多个文件添加到ZIP中。
// Create FileStream for output ZIP archive
using (FileStream zipFile = File.Open("compressed_files.zip", FileMode.Create))
{
// File to be added to archive
using (FileStream source1 = File.Open("alice29.txt", FileMode.Open, FileAccess.Read))
{
// File to be added to archive
using (FileStream source2 = File.Open("asyoulike.txt", FileMode.Open, FileAccess.Read))
{
using (var archive = new Archive())
{
// Add files to the archive
archive.CreateEntry("alice29.txt", source1);
archive.CreateEntry("asyoulik3.txt", source2);
// ZIP the files
archive.Save(zipFile, new ArchiveSaveOptions() { Encoding = Encoding.ASCII, ArchiveComment = "two files are compressed in this archive" });
}
}
}
}
也可以使用FileInfo类将多个文件添加到ZIP存档中。在此方法中,将使用FileInfo类加载文件,并使用Archive.CreateEntry(String,FileInfo)方法将其添加到ZIP存档中。下面的代码示例演示如何使用C#中的FileInfo类对多个文件进行ZIP 。
// Create FileStream for output ZIP archive
using (FileStream zipFile = File.Open("compressed_files.zip", FileMode.Create))
{
// Files to be added to archive
FileInfo fi1 = new FileInfo("alice29.txt");
FileInfo fi2 = new FileInfo("fields.c");
using (var archive = new Archive())
{
// Add files to the archive
archive.CreateEntry("alice29.txt", fi1);
archive.CreateEntry("fields.c", fi2);
// Create ZIP archive
archive.Save(zipFile, new ArchiveSaveOptions() { Encoding = Encoding.ASCII });
}
}
可以对文件夹进行ZIP压缩,这可能是将多个文件添加到ZIP存档的另一种选择。只需将源文件放入一个文件夹中,然后将该文件夹添加到ZIP存档中。以下是压缩文件夹的步骤:
下面的代码示例演示如何在C#中将文件夹添加到ZIP。
// Create FileStream for output ZIP archive
using (FileStream zipFile = File.Open("compress_directory.zip", FileMode.Create))
{
using (Archive archive = new Archive())
{
// Folder to be Zipped
DirectoryInfo corpus = new DirectoryInfo("CanterburyCorpus");
archive.CreateEntries(corpus);
// Create ZIP archive
archive.Save(zipFile);
}
}
可以使用密码保护ZIP存档。为了指定ZIP存档的密码,在Archive的构造函数中使用ArchiveEntrySettings类。以下代码示例显示了如何在C#中创建受密码保护的ZIP归档文件。
// Create FileStream for output ZIP archive
using (FileStream zipFile = File.Open("compress_directory.zip", FileMode.Create))
{
using (Archive archive = new Archive(new ArchiveEntrySettings(null, new TraditionalEncryptionSettings("p@s$"))))
{
// Add folder to the archive
DirectoryInfo corpus = new DirectoryInfo("CanterburyCorpus");
archive.CreateEntries(corpus);
// Create ZIP archive
archive.Save(zipFile);
}
}
.NET的Aspose.ZIP还允许您将AES加密应用于ZIP存档。您可以使用以下AES加密方法:
为了应用AES加密,API提供了AesEcryptionSettings类。以下代码示例显示了如何在C#中创建AES加密的ZIP存档。
// Create FileStream for output ZIP archive
using (FileStream zipFile = File.Open("compress_directory.zip", FileMode.Create))
{
using (Archive archive = new Archive(new ArchiveEntrySettings(null, new AesEcryptionSettings("p@s$", EncryptionMethod.AES128))))
{
// Add folder to archive
DirectoryInfo corpus = new DirectoryInfo("CanterburyCorpus");
archive.CreateEntries(corpus);
// Create ZIP archive
archive.Save(zipFile);
}
}
还想要更多吗?您可以点击阅读【2019 · Aspose最新资源整合】,查找需要的教程资源。如果您有任何疑问或需求,请随时加入Aspose技术交流群(642018183),我们很高兴为您提供查询和咨询。 本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@ke049m.cn




Parasoft C/C++test提供了独立版和插件版两种部署方案,其中插件版能够与Aurix开发环境深度集成,有效解决编译器调用限制问题,为安全关键系统的代码质量保障提供了可行的技术路径。
本文将为大家介绍一些MyEclipse开发过程中能用到的EJB开发工具,欢迎下载最新版体验!
本文主要介绍如何在MVVM应用程序中使用虚拟源,欢迎下载最新版组件体验!
Parasoft C/C++test是一款功能强大的代码测试与分析工具,专为提升代码质量、确保软件安全与可靠性而设计。要在 Ubuntu 桌面环境中使用这一强大的工具,第一步就是完成其安装与许可证配置。
相关产品
Aspose.ZIP for .NET是用于标准ZIP格式的灵活文档压缩和存档操作API
Aspose.TotalAspose.Total 能为.NET和JAVA应用程序增加图表、电子邮件、拼写检查、条码、流程、文件格式管理等功能。
最新文章 MORE
半岛外围网上直营相关的文章 MORE
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@ke049m.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
半岛外围网上直营