我想静默解压缩.rar
归档文件。.Net在IO.Compression中没有任何Rar类,所以我想使用cmd(比外部dll更好)。它可以解压缩,但不是在静默模式下。我做错了什么?
const string source = "D:\\22.rar";
string destinationFolder = source.Remove(source.LastIndexOf('.'));
string arguments = string.Format(@"x -s ""{0}"" *.* ""{1}\""", source, destinationFolder);
Process.Start("winrar", arguments);
5条答案
按热度按时间arknldoa1#
我自己使用这段代码(添加了您的代码):
这将在后台启动WinRAR程序,并在文件完成解压缩后将控制权返回给您。
希望能有所帮助
qco9c6ql2#
使用SharpCompress https://github.com/adamhathcock/sharpcompress/blob/master/USAGE.md也有一个nuget包,便于安装。
idfiyjo83#
或者,您可以在应用程序中嵌入名为unRAR的工具,这是WinRAR开发人员开发的小型可执行文件(official download)。
此实用程序是免费的,因此您的用户将不需要有WinRAR许可证来使用您的应用程序。:)它可以使用相同的方式txtechhelp描述执行。
j9per5c44#
使用NUnrar,还有一个nuget包,方便安装。
yi0zb3m45#
正如Mihail Shishkov所说,使用SharpCompress库解开文件是可能的。
下面是一个基本用法示例:
我试着在macOS下的.NET 6应用程序中使用它,它工作得很好。