gpt4 book ai didi

c# - 使用 Shell 命令在 .net 4.0 中解压缩没有外部包?

转载 作者:太空宇宙 更新时间:2023-11-03 13:38:58 24 4
gpt4 key购买 nike

我想知道是否可以在不使用 .net 4.0 或更低版本中的开源 dll 的情况下以 c sharp 解压缩文件?

我有一些使用“Shell”命令的 VBA 代码(如下)。升 c 也可以吗?

Sub UnzipMe(path)

Dim strDOSCMD As String
Dim filename As String
Dim i As Integer


filename = path + "\test.txt"
strDOSCMD = "unzip -n " + path + "\zipfile.zip -d " + path
'SEND TO DOS
retval = Shell(strDOSCMD, vbHide)


End Sub

这很好用,而且非常简单,但我想用 c sharp 来做,而不是混搭。这肯定是可行的,还是应该有一个同样简单的解决方案?

最佳答案

您可以使用 Process.Start 在 C# 中启动进程.

您的代码可能看起来像(未测试..):

public void UnzipMe(string path){
System.Diagnostics.Process process = new System.Diagnostics.Process();
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
startInfo.FileName = "cmd.exe";
startInfo.Arguments = "/C unzip -n " + path + "\zipfile.zip -d " + path;
process.StartInfo = startInfo;
process.Start();
//do some extra stuff here
}

对于 zip 内容,请考虑使用第三方库,如 sharpziplib我在许多项目中成功地使用了它。

查看这些示例:https://github.com/icsharpcode/SharpZipLib/wiki/Zip-Samples

关于c# - 使用 Shell 命令在 .net 4.0 中解压缩没有外部包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17806720/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com