하나의 디렉토리에서 다른 디렉토리로 파일을 복사 할 수있는 this solution on MSDN이 있지만 하위 디렉토리가 아닌 기본 디렉토리에서만 복사됩니다.디렉토리와 그 내용을 비동기 복사
이 솔루션을 수정하여 모든 폴더와 해당 내용을 복사 할 수 있습니까?
string StartDirectory = @"C:\Users\...";
string EndDirectory = @"C:\Users\....";
//Creates all of the directories and sub-directories
foreach (string dirPath in Directory.GetDirectories(StartDirectory, "*", SearchOption.AllDirectories))
Directory.CreateDirectory(dirPath.Replace(StartDirectory, EndDirectory));
foreach (string filename in Directory.EnumerateFiles(StartDirectory))
{
using (FileStream SourceStream = File.Open(filename, FileMode.Open))
{
using (FileStream DestinationStream = File.Create(EndDirectory + filename.Substring(filename.LastIndexOf('\\'))))
{
await SourceStream.CopyToAsync(DestinationStream);
}
}
}
코드가 나에게 두 가지 오류를 제공합니다 : HTTP를 :
– AlonMln@ AlonMln - 지금 당신을 위해 더 잘 작동 할 것으로 업데이트되었습니다. 나는 정적 인 파일과 디렉토리에 대해 잊어 버렸다. FileInfo와 DirectoryInfo는 훨씬 더 많은 컨트롤과 객체 지향적 인 기능을 제공하므로 항상 사용합니다. 보시다시피, 구문을 약간 다르게 만듭니다. 이것은 여전히 조금 더 깨끗하게 할 수 있지만 그것이 내 생각에 도움이 될 것입니다. –