C# 通过SharpCompress.Archives.Rar解压RaR文件
2023-12-25 17:41:23
/// <summary>
/// 解压一个Rar文件
/// </summary>
/// <param name="RarFile">需要解压的Rar文件(绝对路径)</param>
/// <param name="TargetDirectory">解压到的目录</param>
/// <param name="OverWrite">是否覆盖已存在的文件</param>
public static void UnRar(string RarFile, string TargetDirectory, bool OverWrite = true)
{
//如果解压到的目录不存在,则报错
if (!System.IO.Directory.Exists(TargetDirectory))
{
throw new System.IO.FileNotFoundException("指定的目录: " + TargetDirectory + " 不存在!");
}
using (var archive = SharpCompress.Archives.Rar.RarArchive.Open(RarFile))
{
foreach (var entry in archive.Entries)
{
if (!entry.IsDirectory)
{
entry.WriteToDirectory(TargetDirectory, new SharpCompress.Common.ExtractionOptions()
{
ExtractFullPath = true,
Overwrite = OverWrite
});
}
}
}
}
本机测试结果:
目前来看这种解压方式对于电脑有没有安装rar压缩软件并没有要求
(PS:我测试的电脑上安装的是7-zip,没有安装WinRaR软件)
文章来源:https://blog.csdn.net/lwkliuwenkang/article/details/135198836
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!