使用 7zip 压缩文件的示例 C# .net 代码
我已在我的计算机上安装了 7-zip 4.65,路径为 C:\Program files。我想在 C# 代码中使用它来压缩文件。文件名将由用户动态提供。任何人都可以提供有关如何在 C# 代码中使用 7zip 的示例代码吗?
I have installed 7-zip 4.65 on my machine at C:\Program files. I want to use it in C# code to zip a file. The file name will be provided by the user dynamically. Can any one please provide a sample code on how to use 7zip in C# code?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
上面给出了很多答案,但我使用下面提到的代码来使用 7zip 压缩或解压缩文件,
您的系统中必须有 7zip 应用程序。
创建 zip 文件
lots of answer given above but i used this below mention code to zip or unzip a file using 7zip
you must have 7zip application in your system .
to create zip file
您需要源代码,而不是二进制版本。
这可以通过 LZMA SDK 获取。
您将在其中找到一个文件夹
CS
,其中包含 7zip 文件算法的 C# 实现。Instead of the binary version you need the source code.
This can be get as the LZMA SDK.
There you'll find a folder
CS
that contains a C# implementation of the algorithm for 7zip files.您是否尝试过 7zip 的 C# 接口: http://www.codeproject.com/KB /DLL/cs_interface_7zip.aspx
[编辑]
看起来这个问题已经得到解答: C# 的免费压缩库支持 7zip (LZMA)
更多库:
http://www.eggheadcafe.com/tutorials/aspnet/064b41e4-60bc-4d35-9136-368603bcc27a/7zip-lzma-inmemory-com.aspx
http://sevenzipsharp.codeplex.com/
http://www.7-zip.org/sdk.html - 来自官方网站,所以可能最好使用这个
Have you tried this C# interface for 7zip: http://www.codeproject.com/KB/DLL/cs_interface_7zip.aspx
[edit]
Looks like this has been answered already: Free compression library for C# which supports 7zip (LZMA)
further libraries:
http://www.eggheadcafe.com/tutorials/aspnet/064b41e4-60bc-4d35-9136-368603bcc27a/7zip-lzma-inmemory-com.aspx
http://sevenzipsharp.codeplex.com/
http://www.7-zip.org/sdk.html - From the official site so probably best to use this
或者您可以使用 J# zip 库(包含在 .Net Framework 中)
示例:http://weblogs.asp.net/jgalloway/archive/2007/10/25/creating-zip-archives-in-net-without-an-external-library-like-sharpziplib .aspx
Or you can use the J# zip library (which is included in the .Net Framework)
a sample: http://weblogs.asp.net/jgalloway/archive/2007/10/25/creating-zip-archives-in-net-without-an-external-library-like-sharpziplib.aspx
我想如果您希望使用 c:\program files 中已安装的程序,您可以使用 System.Diagnostics.Process 来运行命令行应用程序 -
http://msdn.microsoft.com/en-us/ Library/system.diagnostics.process.aspx
传递参数也很容易。这里有很多例子——
http://www.c-sharpcorner.com/UploadFile/DipalChoksi/ ShellCommandsInCS12032005042031AM/ShellCommandsInCS.aspx
I suppose if you wish to use the installed one you have in c:\program files, you could just use
System.Diagnostics.Process
to run command line apps -http://msdn.microsoft.com/en-us/library/system.diagnostics.process.aspx
Passing parameters is easy too. There are plenty of examples here -
http://www.c-sharpcorner.com/UploadFile/DipalChoksi/ShellCommandsInCS12032005042031AM/ShellCommandsInCS.aspx