尝试在Azure Local Storage下压缩文件时出现错误。
我正在尝试将.ps1
文件压缩到<filename>.ps1.zip
,但我收到错误
目录名无效。
代码:
string scriptPath = Path.Combine(fileDirectoryPath, fileName);
string destFilePath = string.Empty;
List<string> zipFolderDetails = new List<string>();
if (!File.Exists(scriptPath))
{
throw new Exception(string.Format("ZipFile : No file exists in the source path {0}", fileName));
}
string newDirectoryPath = Path.Combine(Utilities.GetLocalDirectoryScriptPath(), Guid.NewGuid().ToString());
zipFolderDetails.Add(newDirectoryPath);
Directory.CreateDirectory(newDirectoryPath);
destFilePath = newDirectoryPath + @"\" + fileName + ".zip";
zipFolderDetails.Add(destFilePath);
//// Zipping the script file
System.IO.Compression.ZipFile.CreateFromDirectory(scriptPath, destFilePath, CompressionLevel.Fastest, false); // <--- Exception here
return zipFolderDetails;
答案 0 :(得分:0)
不是连接destFilePath
,为什么不能像下面那样使用。
destFilePath = Path.Combine(newDirectoryPath,fileName + ".zip");
将为您提供所需文件的正确路径。
答案 1 :(得分:0)
我们解决了这个问题。我们将file path
作为第一个参数传递,但它应该是directory path
所需的zip文件。
我们更改了这样的代码,现在可以正常使用
System.IO.Compression.ZipFile.CreateFromDirectory(sourceDirectory, destFilePath, CompressionLevel.Fastest, false); // <--- Exception here