.Net中目录的复制方法

一个目录复制方法,用来将一个目录下的所有内容拷贝到另一个目录下。就是用递归回溯的方法将子目录一级级创建并拷贝当前文件夹中的所有文件。

  private void directoryCopy(string sourceDirectory, string targetDirectory)
  {
   if (!Directory.Exists(sourceDirectory) || !Directory.Exists(targetDirectory))
   {
    return;
   }

   DirectoryInfo sourceInfo = new DirectoryInfo(sourceDirectory);
   FileInfo[] fileInfo = sourceInfo.GetFiles();

   foreach (FileInfo fiTemp in fileInfo)
   {
    File.Copy(sourceDirectory + "//" + fiTemp.Name, targetDirectory + "//" + fiTemp.Name, true);
   }

   DirectoryInfo[] diInfo = sourceInfo.GetDirectories();

   foreach (DirectoryInfo diTemp in diInfo)
   {
    string sourcePath = diTemp.FullName;
    string targetPath = diTemp.FullName.Replace(sourceDirectory,targetDirectory);
    Directory.CreateDirectory(targetPath);
    directoryCopy(sourcePath,targetPath);
   }
  }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
有两种常见的方法可以实现将 .exe 文件和 .dll 文件分开在不同目录: 1. 使用 nuget 包管理器 在 .NET Core ,可以使用 nuget 包管理器将依赖项打包到单独的文件夹。要实现这一点,可以在 .csproj 文件添加以下代码: ``` <PropertyGroup> <OutputPath>bin\$(Configuration)\</OutputPath> <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath> <CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies> </PropertyGroup> <ItemGroup> <PackageReference Include="Your.Package.Name" Version="x.x.x" /> </ItemGroup> ``` 这将确保包将被安装到单独的文件夹,并且将 .exe 文件和 .dll 文件分开。在项目文件夹,会创建一个名为“bin”(默认情况下)的文件夹,其包含 .exe 文件和 .dll 文件的两个子文件夹。 2. 使用命令行工具 另一种方法是使用命令行工具手动分离 .exe 文件和 .dll 文件。可以使用以下命令创建 .exe 文件: ``` dotnet publish -r win-x64 -c Release /p:PublishSingleFile=true /p:PublishTrimmed=true --self-contained false ``` 这将创建一个单独的 .exe 文件,其包含所有的依赖项。然后,可以将 .dll 文件移动到单独的文件夹,以便在运行时加载它们。要移动 .dll 文件,可以使用以下命令: ``` xcopy /Y /S /I /E /Q /R /H bin\Release\netcoreapp3.1\publish\*.dll Your\Destination\Folder ``` 这将复制所有的 .dll 文件到指定的目标文件夹。在运行程序时,需要确保 .dll 文件可以被正确加载。可以使用以下命令来运行程序: ``` dotnet YourProgramName.exe --depsfile YourProgramName.deps.json --runtimeconfig YourProgramName.runtimeconfig.json ``` 这将确保 .dll 文件能够被正确加载,并且 .exe 文件和 .dll 文件被分离在不同的文件夹

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值