From 0a1d6be7b7ee41273e57e895a5ec0bff47f5f979 Mon Sep 17 00:00:00 2001 From: Glavo Date: Mon, 4 Aug 2025 20:31:29 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=20ModTranslations::loadFromR?= =?UTF-8?q?esource=20(#4178)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jackhuang/hmcl/ui/versions/ModTranslations.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/ModTranslations.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/ModTranslations.java index feddeea04..a3da0da79 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/ModTranslations.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/ModTranslations.java @@ -20,9 +20,11 @@ package org.jackhuang.hmcl.ui.versions; import org.jackhuang.hmcl.mod.RemoteModRepository; import org.jackhuang.hmcl.util.Pair; import org.jackhuang.hmcl.util.StringUtils; -import org.jackhuang.hmcl.util.io.IOUtils; import org.jetbrains.annotations.Nullable; +import java.io.BufferedReader; +import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; import java.util.*; import java.util.stream.Collectors; @@ -121,9 +123,11 @@ public enum ModTranslations { return true; } - try { - String modData = IOUtils.readFullyAsString(ModTranslations.class.getResourceAsStream(resourceName)); - mods = Arrays.stream(modData.split("\n")).filter(line -> !line.startsWith("#")).map(Mod::new).collect(Collectors.toList()); + //noinspection DataFlowIssue + try (BufferedReader reader = new BufferedReader( + new InputStreamReader( + ModTranslations.class.getResourceAsStream(resourceName), StandardCharsets.UTF_8))) { + mods = reader.lines().filter(line -> !line.startsWith("#")).map(Mod::new).collect(Collectors.toList()); return true; } catch (Exception e) { LOG.warning("Failed to load " + resourceName, e);