From 1a8ca99e42879e35fa3380ef04b35c91f73629a3 Mon Sep 17 00:00:00 2001 From: kunfei Date: Wed, 5 Oct 2022 00:30:40 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/io/legado/app/help/AppWebDav.kt | 2 +- .../main/java/io/legado/app/utils/UrlUtil.kt | 28 +++++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 app/src/main/java/io/legado/app/utils/UrlUtil.kt diff --git a/app/src/main/java/io/legado/app/help/AppWebDav.kt b/app/src/main/java/io/legado/app/help/AppWebDav.kt index 58a5e0464..7af00bd18 100644 --- a/app/src/main/java/io/legado/app/help/AppWebDav.kt +++ b/app/src/main/java/io/legado/app/help/AppWebDav.kt @@ -230,7 +230,7 @@ object AppWebDav { } private fun getProgressUrl(name: String, author: String): String { - return bookProgressUrl + name + "_" + author + ".json" + return bookProgressUrl + UrlUtil.replaceReservedChar("${name}_${author}") + ".json" } /** diff --git a/app/src/main/java/io/legado/app/utils/UrlUtil.kt b/app/src/main/java/io/legado/app/utils/UrlUtil.kt new file mode 100644 index 000000000..5e23e7143 --- /dev/null +++ b/app/src/main/java/io/legado/app/utils/UrlUtil.kt @@ -0,0 +1,28 @@ +package io.legado.app.utils + +object UrlUtil { + + fun replaceReservedChar(text: String): String { + return text.replace("%", "%25") + .replace(" ", "%20") + .replace("\"", "%22") + .replace("#", "%23") + .replace("&", "%26") + .replace("(", "%28") + .replace(")", "%29") + .replace("+", "%2B") + .replace(",", "%2C") + .replace("/", "%2F") + .replace(":", "%3A") + .replace(";", "%3B") + .replace("<", "%3C") + .replace("=", "%3D") + .replace(">", "%3E") + .replace("?", "%3F") + .replace("@", "%40") + .replace("\\", "%5C") + .replace("|", "%7C") + } + + +} \ No newline at end of file