2010-10-21 14 views
26

Ich muss alle Dateien aus dem Quellordner in den Zielordner verschieben. Wie kann ich den Dateinamen einfach aus dem Dateipfadnamen extrahieren?So extrahieren Sie den Dateinamen aus dem Dateipfadnamen?

string newPath = "C:\\NewPath"; 

string[] filePaths = Directory.GetFiles(_configSection.ImportFilePath); 
foreach (string filePath in filePaths) 
{ 
    // extract file name and add new path 
    File.Delete(filePath); 
} 

Antwort

49

Versuchen Sie Folgendes:

string newPathForFile = Path.Combine(newPath, Path.GetFileName(filePath)); 
+2

Danke, Ich liebe diese Seite)) 1 Minute, um die Antwort zu bekommen. –

+7

Gern geschehen. Besser nichts zu tun (weißt du: Arbeit). –

+0

Viele Leute, um Ihr Problem zu sehen :), Collective Intelligence – TalentTuner

10

Verwendung Directory und Fileinfo anstelle von Datei- und Verzeichnis präsentieren sie mehr erweiterte Funktionen.

DirectoryInfo di = 
    new DirectoryInfo("Path"); 
FileInfo[] files = 
    di.GetFiles("*.*", SearchOption.AllDirectories); 

foreach (FileInfo f in files) 
    f.MoveTo("newPath"); 
4

Sie es wie folgt tun:

string newPath = "C:\\NewPath"; 
string[] filePaths = Directory.GetFiles(_configSection.ImportFilePath); 
foreach (string filePath in filePaths) 
{ 
    string newFilePath = Path.Combine(newPath, Path.GetFileName(filePath); 
    File.Move(filePath, newFilePath); 
} 
Verwandte Themen