[C#] Dateierweiterung ändern

Drucken
( 0 Votes ) 
Hauptkategorie: Programmieren Kategorie: C#
Erstellt am 15.01.2014 Zuletzt aktualisiert am 15.01.2014 Geschrieben von Jonny132
Oftmals ist es erforderlich eine bestehende Datei einzulesen, diese zu bearbeiten und in einem neuen Format abzuspeichern. Im Dateisystem von Windows ist das Format einer Datei meistens an der Datei-Extension bzw. der Erweiterung der Datei erkennbar.

Mittels einer kleinen Funktion lässt sich die Dateierweiterung einfach ändern.
Gebraucht wird hierzu der System.IO-Namespace. Dieser kann um Schreibarbeit zu sparen mittels using eingefügt werden.
using System.IO;
    
    private string ChangeExtension(string filePath, string newExtension)
    {
      if(!newExtension.StartsWith("."))
      {
         newExtension = "." + newExtension;
      }
      
      string path = Path.GetDirectoryName(filePath);
      string newFileName = Path.GetFileNameWithoutExtension(filePath) + newExtension;
      return Path.Combine(path, newFileName);
    }

In der If-Abfrage wird zuerst geprüft ob der Programmierer, der als neue Extension übergebene String, mit einem Punkt anfängt. Tut er dies nicht wird er hinzugefügt.
Dann wird der Pfad ohne Dateinamen mittels GetDirectoryName herausgefiltert um anschliessend den neuen Dateinamen mit der neuen Dateierweiterung zusammenzusetzen.

Zu guter letzt wird mittels der Path.Combine-Funktion der Pfad zusammengesetzt und zurückgegeben.

    Veröffentlichen Sie ihre Kommentare ...