C# Dateitypen genau erkennen

Rooky420

Cadet 4th Year
Registriert
Nov. 2015
Beiträge
98
Hallo Zusammen,

ich habe eine Anwendung mit verschiedenen Dateitypen. Wie z.B. .XML dateien oder ähnliches.
Ich will mit meinem Programm genau erkennen was für ein Typ die Datei ist.
Bei den ganzen XML files beispielsweise gibt es dateien die verschlüsselt sind bzw dateien die ein spezielles verhalten meines Programms erfordern.

Nun muss ich irgendwie diese dateien genau Identifizieren und ich will nicht über den Dateinamen solche programmaktionen herbeirufen.
In die erste Zeile einer datei will ich es auch nicht wirklich reinschreiben.

Gibt es einen Weg bestimmte Dateiattribute, Metadaten oder ähnliches unter Windows so zu konfigurieren dass ich über diese meinen genauen dateityp auslesen kann?
Hat jemand andere vorschläge sowas zu realisieren?

Lg
 
Unter UNIX gibt es das Programm 'file'. Ich denke das gibt es auch für Windows, danach würde ich schauen. Dann musst du nur die Ausgabe parsen und solltest fertig sein
 
Danke für deine Antwort!

Es ist nur so dass ich während das Programm läuft auch dateien erzeugt werden. Darum muss ich von meinem Quelltext aus auch diese Änderungen vornehmen können.
 
Analysier die Struktur und reagier entsprechend - jede Datei ist anders aufgebaut. XML-Dateien haben bspw. unterschiedliche Root-Nodes. Auch dessen Child-Nodes sind unterschiedlich. JPEGs fangen bspw. immer mit den Bytes FF D8 an. GIFs beginnen immer mit den Bytes 47 49 46.

Wenn die Datei verschlüsselt ist, musst du sie eben entschlüsseln und danach analysieren.

Oder versteh ich die Frage falsch?
 
Zurück
Oben