2010-12-28 8 views
2

Ich habe die [Quelle: (Pfad)] der Datei, die an der Stelle kopiert werden soll [DestinationC: \ MyFiles \ TempFolder]Kopieren Sie die Datei in dem Ordner mit Dateipfad in C#

Angenommen Pfad ist C : \ Dokumente und Einstellungen \ MyName \ Eigene Dateien \ xyz.doc I xyz.doc bei C kopiert werden soll: \ MyFiles \ TempFolder \ iethe Lage becomesC: \ MyFiles \ TempFolder \ xyz.doc

ist es möglich, Datei umzubenennen, während sie zum Zielordner fertig wird?

Sie deinnkening ...

Antwort

7

Alles, was Sie brauchen, ist System.IO.File.Copy(): http://msdn.microsoft.com/en-us/library/c6cfw35a.aspx

File.Copy("C:\Documents and Settings\MyName\My Documents\xyz.doc", "C:\MyFiles\TempFolder\" + newFilenName); 

(Seien Sie vorsichtig mit \ in den Saiten oben, sollten sie \\ entwertet werden)

Kopieren ist die Schaffung eine neue Datei mit dem gleichen Inhalt des alten, so dass der neue Name nicht wie der alte Name sein muss. Wenn Sie den vollständigen Pfad als Teil des Dateinamens betrachten, können Sie sehen, dass die Quelle und das Ziel sich vom Start unterscheiden, auch wenn Sie xyz.doc nicht ändern. Nun

3

... Sie können Copy verwenden, aber Sie müssen überprüfen müssen, ob das Verzeichnis vorhanden ist:

string file = @"C:\Documents and Settings\MyName\My Documents\xyz.doc"; 
string destination = @"C:\MyFiles\TempFolder"; 

if(!System.IO.Directory.Exists(destination)) 
{ 
System.IO.Directory.CreateDirectory(destination); 
} 

destination = System.IO.Path.Combine(destination, System.IO.Path.GetFileName(file)); 
System.IO.File.Copy(file, destination); 

Changed den Code Ihrem Beispiel zu reflektieren.

Verwandte Themen