小编And*_*son的帖子

Compression.ZipFile抛出ArgumentException"路径不是合法形式"

我正在尝试使用Powershell v3和.NET 4.5更改文件夹中文件中的字符串,然后压缩文件夹的内容.我有字符串替换工作,但然后zip继续在目录路径上抛出ArgumentException,即使我确定它是正确的.

Exception calling "CreateFromDirectory" with "4" argument(s): "The path is not of a legal form."
At line:5 char:4
+    [System.IO.Compression.ZipFile]::CreateFromDirectory($sourcedir,
+    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : ArgumentException
Run Code Online (Sandbox Code Playgroud)

关于ZipFile.CreateFromDirectory的Microsoft文章:http://msdn.microsoft.com/en-us/library/hh485721( v = vs.110)
.aspx

我正在尝试的代码:

function ZipFiles( $zipfilename, $sourcedir )
{
   [Reflection.Assembly]::LoadWithPartialName("System.IO.Compression.FileSystem")
   $compressionLevel = [System.IO.Compression.CompressionLevel]::Optimal
   [System.IO.Compression.ZipFile]::CreateFromDirectory($sourcedir,
        $zipfilename, $compressionLevel, $false)
}

Get-Content public-build\index.html | ForEach-Object { $_ -replace "data-default-api=`"dev`"", "data-default-api=`"test`"" } | Set-Content public-build\index2.html
cp public-build\index2.html public-build\index.html
rm public-build\index2.html
ZipFiles("public-build.zip", "C:\Users\Administrator\Desktop\public-build")
Run Code Online (Sandbox Code Playgroud)

我尝试将"C:\ …

.net powershell

12
推荐指数
1
解决办法
4801
查看次数

标签 统计

.net ×1

powershell ×1