c#使用系統函式System.Shell.Folder.copyHere解壓.zip檔案
C#解壓.zip檔案,網上一搜一大堆方法,有使用System.IO.Compression.GZipStream的,有使用J#庫函式的,也有仿Java自己寫庫函式的,但好多都不大好使,最終發現還是系統函式System.Shell.Folder.copyHere(oItem [, intOptions])最為好使。具體方法如下:
1. 新增引用 Shell32.dll,可以在Windows\system32中找到它。
2. 新增方法,搞定。
DestFolder.CopyHere(items, 20)中20的其實是一個intOptions flags (4|16),4指不要顯示處理視窗,16指如果處理視窗顯示的話就選擇"yes to all"。關於具體的intOptions描述,可以到http://msdn2.microsoft.com/en-us/library/ms723207.aspx中檢視。
1. 新增引用 Shell32.dll,可以在Windows\system32中找到它。
2. 新增方法,搞定。
static void UnZip(string zipFile,string destFolder)
{
Shell32.ShellClass sc = new Shell32.ShellClass();
Shell32.Folder SrcFolder = sc.NameSpace(zipFile);
Shell32.Folder DestFolder = sc.NameSpace(destFolder);
Shell32.FolderItems items = SrcFolder.Items();
DestFolder.CopyHere(items, 20);
}
(這裡只需注意一點,destFolder必須是事先存在的 folder,此方法不會自動建立folder){
Shell32.ShellClass sc = new Shell32.ShellClass();
Shell32.Folder SrcFolder = sc.NameSpace(zipFile);
Shell32.Folder DestFolder = sc.NameSpace(destFolder);
Shell32.FolderItems items = SrcFolder.Items();
DestFolder.CopyHere(items, 20);
}
DestFolder.CopyHere(items, 20)中20的其實是一個intOptions flags (4|16),4指不要顯示處理視窗,16指如果處理視窗顯示的話就選擇"yes to all"。關於具體的intOptions描述,可以到http://msdn2.microsoft.com/en-us/library/ms723207.aspx中檢視。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-612298/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用zlib庫解壓zip檔案
- ZipArchive解壓縮zip檔案Hive
- 使用jar與zip壓縮解壓檔案的區別JAR
- Unix 下批量解壓zip檔案
- win10系統如何使用ACDSee檢視ZIP格式壓縮檔案Win10
- linux下解壓.gz檔案、.cpio檔案、zip檔案Linux
- 關於解壓zip檔案的問題
- C# 檔案流壓縮解壓C#
- Linux 解壓zip檔案詳解之unzip命令!Linux
- node ~ zip壓縮 && 檔案加密加密
- zip壓縮檔案處理方案(Zip4j壓縮和解壓)
- Python 中最快解壓 zip 檔案的方法Python
- 用java解壓zip檔案的中文問題Java
- Java實現檔案壓縮與解壓[zip格式,gzip格式]Java
- Java zip解壓,並遍歷zip中的配置檔案 .cfg或.propertiesJava
- java 把檔案壓縮成 zipJava
- java 生成 zip格式 壓縮檔案Java
- Linux科研武器庫 - 檔案壓縮與解壓縮 - zip / unzipLinux
- 新手教程:如何在 Linux 下解壓 Zip 檔案Linux
- Android 下載Zip檔案,並解壓到本地Android
- 快速解壓 Mac上zip 檔案的兩種方法Mac
- linux系統壓縮,解壓檔案筆記Linux筆記
- nodejs解壓zip/rar檔案到本地,並獲取到解壓進度NodeJS
- Android程式解壓縮zip檔案,並載入顯示解壓後的檔案內容Android
- Linux 系統下解壓 rar 檔案Linux
- php線上解壓zip檔案的方法PHP
- 用PHP實現上傳的ZIP檔案的解壓PHP
- linux下zip檔案解壓亂碼的問題Linux
- java解壓rar,解壓zipJava
- Centos7系統---檔案壓縮與解壓命令詳解。CentOS
- betterzip怎麼解壓檔案?如何使用BetterZip批次解壓壓縮檔案
- zip解壓縮
- php 建立壓縮包zip,並將指定檔案放入zip中PHP
- 壓縮檔案格式rar和zip有什麼區別 壓縮檔案格式rar和zip哪個好
- Cnetos7系統---檔案壓縮與解壓命令詳解。
- 禁止Mac Safari下載zip檔案後自動解壓縮Mac
- c#壓縮檔案C#
- linux下解壓部分zip檔案存在亂碼解決辦法Linux