From fab5bdc2e104fa1d699606bef3b57c487dd4838b Mon Sep 17 00:00:00 2001 From: huanghongxun Date: Thu, 20 Dec 2018 20:27:32 +0800 Subject: [PATCH] Auto detect world and datapack's encoding --- HMCLCore/src/main/java/org/jackhuang/hmcl/game/World.java | 2 +- HMCLCore/src/main/java/org/jackhuang/hmcl/mod/Datapack.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/game/World.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/game/World.java index 8e1793b76..67a2240e7 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/game/World.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/game/World.java @@ -88,7 +88,7 @@ public class World { } private void loadFromZip() throws IOException { - try (FileSystem fs = CompressingUtils.createReadOnlyZipFileSystem(file)) { + try (FileSystem fs = CompressingUtils.readonly(file).setAutoDetectEncoding(true).build()) { Path root = Files.list(fs.getPath("/")).filter(Files::isDirectory).findAny() .orElseThrow(() -> new IOException("Not a valid world zip file")); diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/mod/Datapack.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/mod/Datapack.java index df50b2d52..7aaaf8682 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/mod/Datapack.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/mod/Datapack.java @@ -118,7 +118,7 @@ public class Datapack { } public void loadFromZip() throws IOException { - try (FileSystem fs = CompressingUtils.createReadOnlyZipFileSystem(path)) { + try (FileSystem fs = CompressingUtils.readonly(path).setAutoDetectEncoding(true).build()) { Path datapacks = fs.getPath("/datapacks/"); Path mcmeta = fs.getPath("pack.mcmeta"); if (Files.exists(datapacks)) { // multiple datapacks