Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# tarArchive ExtractContents()创建目录时发生异常'*';因为已经存在同名的文件或目录_C#_Asp.net Core_Filestream - Fatal编程技术网

C# tarArchive ExtractContents()创建目录时发生异常'*';因为已经存在同名的文件或目录

C# tarArchive ExtractContents()创建目录时发生异常'*';因为已经存在同名的文件或目录,c#,asp.net-core,filestream,C#,Asp.net Core,Filestream,我用asp.net内核编写了一个程序,我将提取tar归档文件,我使用了这种方法 tarArchive.ExtractContents(destPathFolder) 但我在创建目录“*”时出错,因为已经存在同名的文件或目录。我不知道如何解决这个问题我做了很多搜索,但我无法解决我的问题 例如,blow地址是我提取文件的地方 C:\data\634192CC-FDCB-4711-BD41-B0F7A7E77148\BAF59489-C7F9-4747-A0A1-B3C7A94FFFD4-2019-

我用asp.net内核编写了一个程序,我将提取tar归档文件,我使用了这种方法

tarArchive.ExtractContents(destPathFolder)
但我在创建目录“*”时出错,因为已经存在同名的文件或目录。我不知道如何解决这个问题我做了很多搜索,但我无法解决我的问题

例如,blow地址是我提取文件的地方

C:\data\634192CC-FDCB-4711-BD41-B0F7A7E77148\BAF59489-C7F9-4747-A0A1-B3C7A94FFFD4-2019-12-08 14-47-19\task-2019-12-08 21-13-20

此方法提取包含文本文件的tar归档文件。这意味着如果我们有图像文件,我们将得到该错误

static void ExtractTar(Stream inStream, String destFolder)
{
    string sourcePath = Path.Combine(destFolder , "/data" );
    Stream tarStream = new TarInputStream(inStream);
    TarArchive tarArchive = TarArchive.CreateInputTarArchive(tarStream);
    tarArchive.ExtractContents(sourcePath );
    tarArchive.Close();
    tarStream.Close();
    inStream.Close();
}

我已更改为此代码,但我已获得对“”的访问路径被拒绝

     static void ExtractTar(string addressFile, string destFolder)
   {
      Stream inStream = System.IO.File.OpenRead(addressFile);
      TarArchive tarArchive = TarArchive.CreateInputTarArchive(inStream);
      tarArchive.ExtractContents(destFolder);
      tarArchive.Close();    
      inStream.Close();

   }

你所说的“这意味着如果我们有图像文件,我们就会出错”是什么意思?@Nayu,这意味着有时我们在tar归档文件中有一个文本文件,我可以从tar归档文件中提取文本文件,但有时我们在其中有图像。但我不能提取图像文件(例如多个图像)。有时?您能否确认哪个条件使多个图像无法工作?它在我的测试中使用多个images@NanYu,我已更改了代码,并在问题中添加了,但现在我获得了“”的访问路径被拒绝错误。当然,destFolder和addressFile是相同的路径。您是在IIS上托管还是在vs上托管?