Solved

System.IO Console App, Copy Folder

Posted on 2008-06-10
4
507 Views
Last Modified: 2013-12-17
I want to create a small console app that copys all files from one folder to another, but deletes all files in the destination folder first.

Thanks
string[] files = Directory.GetFiles(@"C:\temp");
            string[] sfiles = Directory.GetFiles(@"C:\temp1");
 
            foreach (string file in files)
                File.Delete(file);
 
            foreach (string sfile in sfiles)
                File.Copy(sfile, "@c:\temp");

Open in new window

0
Comment
Question by:martgriff
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
4 Comments
 
LVL 21

Assisted Solution

by:mastoo
mastoo earned 100 total points
ID: 21751318
string[] files = Directory.GetFiles(@"C:\temp");

            string[] sfiles = Directory.GetFiles(@"C:\temp1");
 
            foreach (string file in files)
{
                File.Copy(sfile, "c:\\temp");
              File.Delete(file);
}
0
 
LVL 18

Accepted Solution

by:
jcoehoorn earned 200 total points
ID: 21751403

void CopyFolder(string srcPath, string destPath)
{
    string[] files = Directory.GetFiles(destPath);
    foreach (string file in files)
    {
        File.Delete(file);
    }
 
    if (!destPath.EndsWith(@"\")) destPath += @"\";
 
    files = Directory.GetFiles(srcPath);
    foreach (string file in files)
    {
       FileInfo theFile = new FileInfo(file);
       File.Copy(file, destPath + theFile.Name);
    }
}

Open in new window

0
 
LVL 12

Assisted Solution

by:jandromeda
jandromeda earned 200 total points
ID: 21752200
Here you go.
DirectoryInfo source = new DirectoryInfo(@"C:\My_Documents\My_Projects\DotNET\ExpertExchange\BkSource");
			DirectoryInfo dest = new DirectoryInfo(@"C:\My_Documents\My_Projects\DotNET\ExpertExchange\BkTarget");
			
			FileInfo[] files = dest.GetFiles();
			
			// Copy files in the destination folder
			foreach (FileInfo file in files)
			{
				file.Delete();
			}
			
			files = source.GetFiles();
			
			// Copy all the files in source folder to destination folder
			foreach (FileInfo file in files)
			{
				file.CopyTo(Path.Combine(dest.FullName, file.Name), true);
			}

Open in new window

0
 

Author Closing Comment

by:martgriff
ID: 31465718
Thanks for you help, I dod manage to sort this.
0

Featured Post

SharePoint Admin?

Enable Your Employees To Focus On The Core With Intuitive Onscreen Guidance That is With You At The Moment of Need.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Jaspersoft Studio is a plugin for Eclipse that lets you create reports from a datasource.  In this article, we'll go over creating a report from a default template and setting up a datasource that connects to your database.
Performance in games development is paramount: every microsecond counts to be able to do everything in less than 33ms (aiming at 16ms). C# foreach statement is one of the worst performance killers, and here I explain why.
The viewer will learn how to use NetBeans IDE 8.0 for Windows to connect to a MySQL database. Open Services Panel: Create a new connection using New Connection Wizard: Create a test database called eetutorial: Create a new test tabel called ee…
The viewer will learn how to synchronize PHP projects with a remote server in NetBeans IDE 8.0 for Windows.

726 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question