From 0714b6650114c47a0f72fbbee11d1e134d07ec02 Mon Sep 17 00:00:00 2001 From: Siedlerchr Date: Mon, 30 Dec 2024 00:07:04 +0100 Subject: [PATCH 1/3] improve utf8 detction with confidence --- src/main/java/org/jabref/logic/importer/Importer.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/jabref/logic/importer/Importer.java b/src/main/java/org/jabref/logic/importer/Importer.java index d991b087d3b..c139e16b4af 100644 --- a/src/main/java/org/jabref/logic/importer/Importer.java +++ b/src/main/java/org/jabref/logic/importer/Importer.java @@ -121,7 +121,8 @@ protected static Charset getCharset(BufferedInputStream bufferedInputStream) { return defaultCharSet; } - if (Arrays.stream(matches).anyMatch(charset -> "ASCII".equals(charset.getName()))) { + // if we have utf8 with 100 confidence we + if (Arrays.stream(matches).anyMatch(charset -> "ASCII".equals(charset.getName()) || ("UTF-8".equals(charset.getName()) && charset.getConfidence() == 100))) { return defaultCharSet; } From 89885ae01842cd9cd9f3261cb8401e9e7688e43c Mon Sep 17 00:00:00 2001 From: Siedlerchr Date: Mon, 30 Dec 2024 00:10:46 +0100 Subject: [PATCH 2/3] changelog --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 29e50ecd0b7..b00ed925c31 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,8 @@ Note that this project **does not** adhere to [Semantic Versioning](https://semv ### Fixed +- We fixed an issue where a bib file with UFF-8 charset was wrongly loaded with a different charset [forum#5369](https://discourse.jabref.org/t/jabref-5-15-opens-bib-files-with-shift-jis-encoding-instead-of-utf-8/5369/) + ### Removed ## [6.0-alpha] – 2024-12-23 From 36f073c82ec8e907447cfb9e880bf1607174d17e Mon Sep 17 00:00:00 2001 From: Siedlerchr Date: Mon, 30 Dec 2024 12:46:44 +0100 Subject: [PATCH 3/3] refine comment --- src/main/java/org/jabref/logic/importer/Importer.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/jabref/logic/importer/Importer.java b/src/main/java/org/jabref/logic/importer/Importer.java index c139e16b4af..7f465176eea 100644 --- a/src/main/java/org/jabref/logic/importer/Importer.java +++ b/src/main/java/org/jabref/logic/importer/Importer.java @@ -121,7 +121,7 @@ protected static Charset getCharset(BufferedInputStream bufferedInputStream) { return defaultCharSet; } - // if we have utf8 with 100 confidence we + // if we have utf8 with 100 confidence we assume that the file is in utf8, more likely if (Arrays.stream(matches).anyMatch(charset -> "ASCII".equals(charset.getName()) || ("UTF-8".equals(charset.getName()) && charset.getConfidence() == 100))) { return defaultCharSet; }