diff --git a/Core/Utils/DatabaseImporter.cs b/Core/Utils/DatabaseImporter.cs index cc2bd037..7fc950c8 100644 --- a/Core/Utils/DatabaseImporter.cs +++ b/Core/Utils/DatabaseImporter.cs @@ -100,10 +100,15 @@ public class DatabaseImporter : OnLoad { var directoryContent = GetAllFilesInDirectory(directory); - foreach (var fileNameWithPath in directoryContent) { - var bsgPath = $"/{newBasePath}/{_fileUtil.StripExtension(fileNameWithPath)}"; - var sptPath = $"{directory}{ fileNameWithPath}"; - _imageRouter.AddRoute(bsgPath, sptPath); + foreach (var fileNameWithPath in directoryContent) + { + var fileNameWithNoSPTPath = fileNameWithPath.Replace(directory, ""); + var filePathNoExtension = _fileUtil.StripExtension(fileNameWithNoSPTPath, true); + if (filePathNoExtension.StartsWith("/") || fileNameWithPath.StartsWith("\\")) + filePathNoExtension = $"{filePathNoExtension.Substring(1)}"; + + var bsgPath = $"/{newBasePath}/{filePathNoExtension}".Replace("\\", "/"); + _imageRouter.AddRoute(bsgPath, fileNameWithPath); } } diff --git a/Core/Utils/FileUtil.cs b/Core/Utils/FileUtil.cs index 99df8e35..e0a2d2a6 100644 --- a/Core/Utils/FileUtil.cs +++ b/Core/Utils/FileUtil.cs @@ -24,33 +24,38 @@ public class FileUtil { return Path.GetExtension(path).Replace(".", ""); } - + public string GetFileName(string path) { return Path.GetFileName(path); } - + public string StripExtension(string path, bool keepPath = false) { - return keepPath ? path.Split('.').First() : Path.GetFileNameWithoutExtension(path); + if (keepPath) + { + return path.StartsWith(".") ? path.Split('.')[1] : path.Split('.').First(); + } + + return Path.GetFileNameWithoutExtension(path); } public bool DirectoryExists(string path) { return Directory.Exists(path); } - + public void CreateDirectory(string path) { Directory.CreateDirectory(path); } - + public bool FileExists(string path) { return File.Exists(path); } - + public string ReadFile(string path) { return File.ReadAllText(path);