I want to copy the entire contents of a directory from one location to another in C#.
There doesn't appear to be a way to do this using System.IO
classes without lots of recursion.
There is a method in VB that we can use if we add a reference to Microsoft.VisualBasic
:
new Microsoft.VisualBasic.Devices.Computer().
FileSystem.CopyDirectory( sourceFolder, outputFolder );
This seems like a rather ugly hack. Is there a better way?
It may not be performance-aware, but I'm using it for 30MB folders and it works flawlessly. Plus, I didn't like all the amount of code and recursion required for such an easy task.
Note: ZipFile is available on .NET 4.5+ in the System.IO.Compression namespace
Much easier