From 76d8cc0213015f45d45f6fc965cd7fc7308132fe Mon Sep 17 00:00:00 2001 From: Simon Boerrigter Date: Sat, 23 Jan 2021 22:52:15 +0100 Subject: [PATCH] Directory for every file extension --- Src/HitmanExtractor/Program.cs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/Src/HitmanExtractor/Program.cs b/Src/HitmanExtractor/Program.cs index 147cde9..35e9f76 100644 --- a/Src/HitmanExtractor/Program.cs +++ b/Src/HitmanExtractor/Program.cs @@ -9,6 +9,8 @@ namespace HitmanExtractor { public static class Program { + private static readonly List FoundFileType = new List(); + class HitmanException : Exception { public HitmanException(string message) @@ -159,6 +161,9 @@ private static List BuildFileEntryList(BinaryReader binaryReader) var fileEntry = fileEntries[i]; fileEntry.FileType = fileType; + + if (!FoundFileType.Contains(fileType)) FoundFileType.Add(fileType); + fileEntry.DecompressedFileSize = decompressedSize; fileEntry.FileTable2EntryOffset = (ulong) fileTableOffset; @@ -190,7 +195,7 @@ private static void ListFileEntryList(List fileEntryList, List fileEntryList, string outputDirectory, List filters) { - Directory.CreateDirectory(outputDirectory); + foreach (var extension in FoundFileType) Directory.CreateDirectory($"{outputDirectory}/{new string(extension.ToCharArray().Reverse().ToArray())}"); foreach (var fileEntry in fileEntryList) { @@ -226,7 +231,7 @@ private static void ExtractFileEntryList(BinaryReader binaryReader, List {fileEntry.Hash} @ {fileEntry.FileOffset} ({fileEntry.ActualFileSize} / {fileEntry.DecompressedFileSize})"); }