先來簡單說說壓縮檔案的好處,既然要用到那還是知道點好。
1、節約硬碟資源,方便管理
下面的**所執行的壓縮是儲存壓縮,
對於檔案的大小控制的不是那麼嚴格,
但是對於節約硬碟資源的原理是從磁碟的扇區角度上來說的。
2、便於傳輸
大家都知道用qq或其他工具傳輸資源時,
壓縮檔案明顯要快些。
由於檔案太散程式也比較累。
其原理也是因為磁碟尋道要話時間
/// /// 驗證winrar是否安裝。
///
/// true:已安裝,false:未安裝
private static bool existsrar(out string winrarpath)
該方法不要用於判斷使用者是否安裝winrar,
以判斷是否繼續執行一下**
/// /// 生成zip
///
/// 資料夾路徑
/// 生成壓縮檔案的路徑
/// 生成壓縮檔案的檔名
public static void compressrar(string path, string rarpath, string rarname)
\" \"\"", rarname, path);
#region winrar 用到的命令注釋
//[a] 新增到壓縮檔案
//afzip 執行zip壓縮方式,方便使用者在不同環境下使用。(取消該引數則執行rar壓縮)
//-m0 儲存 新增到壓縮檔案時不壓縮檔案。共6個級別【0-5】,值越大效果越好,也越慢
//ep1 依名稱排除主目錄(生成的壓縮檔案不會出現不必要的層級)
//r 修復壓縮檔案
//t 測試壓縮檔案內的檔案
//as 同步壓縮檔案內容
//-p 給壓縮檔案加密碼方式為:-p123456
#endregion
//打包檔案存放目錄
var process = new process,};
process.start();//開始執行
process.waitforexit();//等待完成並退出
process.close();//關閉呼叫 cmd 的什麼什麼
}catch (exception ex)
}
配合上面方法成功完成zip壓縮。
本來還想加是上乙個新增注釋的功能,
但是在網上找到的都是通過檔案新增注釋,這種方式不是我想要的。
由於時間關係暫時放下了。
下面再貼乙個解壓的方法,由於現在還沒有用到解壓的功能,
所以以下方法還未經測試。
/// /// 解壓
///
/// 資料夾路徑
/// 壓縮檔案的路徑
/// 壓縮檔案的檔名
///
public static string uncompressrar(string unrarpath, string rarpath, string rarname)
var pathinfo = "x " + rarname + " " + unrarpath + " -y";
var process = new process,};
process.start();//開始執行
process.waitforexit();//等待完成並退出
process.close();//關閉呼叫 cmd 的什麼什麼
}catch (exception ex)
return unrarpath;
}
最後補充點,如果安裝了winrar而又不能呼叫成功,
試試將安裝目錄下的:rar.exe 檔案複製到 system32 下。
以上**都是通過網上的資源整合而來,並非原創
c 呼叫winrar解壓
之前用登錄檔呼叫總是出錯,所以這裡直接使用winrar的絕對路徑 利用 winrar 進行解壓縮 檔案解壓路徑 絕對 將要解壓縮的 rar 檔案的存放目錄 絕對路徑 將要解壓縮的 rar 檔名 包括字尾 public void unrar string path,string rarpath,str...
C 呼叫Winrar實現解壓縮
c 解壓rar壓縮檔案 測試通過 using system using system.collections.generic using system.text using system.io using microsoft.win32 using system.diagnostics namesp...
在程式中呼叫Winrar
winrar e e rarfile.rar e extract rar file winrar a e mydir e add rar file system.disnogic.process 可以用來啟動乙個新的程序,而且在啟動新程序的時候可以代引數.for exp order a newnam...