diff --git a/app/src/main/java/io/legado/app/model/localBook/EpubFile.kt b/app/src/main/java/io/legado/app/model/localBook/EpubFile.kt index 062816b13..5365be900 100644 --- a/app/src/main/java/io/legado/app/model/localBook/EpubFile.kt +++ b/app/src/main/java/io/legado/app/model/localBook/EpubFile.kt @@ -30,10 +30,11 @@ class EpubFile(var book: Book) { @Synchronized private fun getEFile(book: Book): EpubFile { BookHelp.getEpubFile(book) - //对于Epub文件默认不启用替换 - book.setUseReplaceRule(false) + if (eFile == null || eFile?.book?.bookUrl != book.bookUrl) { eFile = EpubFile(book) + //对于Epub文件默认不启用替换 + book.setUseReplaceRule(false) return eFile!! } eFile?.book = book diff --git a/epublib/src/main/java/me/ag2s/epublib/util/ResourceUtil.java b/epublib/src/main/java/me/ag2s/epublib/util/ResourceUtil.java index f270bdbb3..853d1a5e4 100644 --- a/epublib/src/main/java/me/ag2s/epublib/util/ResourceUtil.java +++ b/epublib/src/main/java/me/ag2s/epublib/util/ResourceUtil.java @@ -43,17 +43,17 @@ public class ResourceUtil { if (title.contains("")) title = "" + title; } - String html = model.replaceAll("\\{title\\}", title) - .replaceAll("\\{content\\}", StringUtil.formatHtml(txt)); + String html = model.replace("{title}", title) + .replace("{content}", StringUtil.formatHtml(txt)); return new Resource(html.getBytes(), href); } public static Resource createPublicResource(String name, String author, String intro, String kind, String wordCount, String model, String href) { - String html = model.replaceAll("\\{name\\}", name) - .replaceAll("\\{author\\}", author) - .replaceAll("\\{kind\\}", kind) - .replaceAll("\\{wordCount\\}", wordCount) - .replaceAll("\\{intro\\}", StringUtil.formatHtml(intro)); + String html = model.replace("{name}", name) + .replace("{author}", author) + .replace("{kind}", kind) + .replace("{wordCount}", wordCount) + .replace("{intro}", StringUtil.formatHtml(intro)); return new Resource(html.getBytes(), href); }