diff --git a/mytransl/src/main/java/com/github/stom79/mytransl/translate/Translate.java b/mytransl/src/main/java/com/github/stom79/mytransl/translate/Translate.java index 7c9af07bd29c36eb0bb26c9b1c0bf0060a1603d8..2e5c224d530a4f84d0b1fe5089a03a23fa46f266 100644 --- a/mytransl/src/main/java/com/github/stom79/mytransl/translate/Translate.java +++ b/mytransl/src/main/java/com/github/stom79/mytransl/translate/Translate.java @@ -373,8 +373,11 @@ public class Translate { //Retrieves the translated content String content; try { - content = URLDecoder.decode(translationJson.getString("translation"), "utf-8"); - } catch (UnsupportedEncodingException e) { + String data = translationJson.getString("translation"); + data = data.replaceAll("%(?![0-9a-fA-F]{2})", "%25"); + data = data.replaceAll("\\+", "%2B"); + content = URLDecoder.decode(data, "utf-8"); + } catch (Exception e) { content = translationJson.getString("translation"); } translate.setTranslatedContent(content);