Как обновить раздел заголовка HTML новым кодом в JAVA

У меня есть несколько htmls, где я хочу заменить раздел заголовка на мои новые строки кода. (Мой новый код - новый CSS, новый импорт файлов JS и несколько скриптов).

Я хочу заменить весь существующий раздел заголовка и заменить новым. Эти изменения должны быть постоянными.

Я знаю, как сделать это в JS или Jquery, но это неосуществимо, так как будет выполняться каждый раз, когда будет загружаться HTML.

Если я получу решение в Java, как я буду запускать определенный код бэкэнда только один раз, и он постоянно обновляет мой HTML-файл.

<html>
<head>
    <script>Existing</script>
    <link rel="stylesheet" src="existing.css"/>
    <script type="text/javascript" src="existing.js"/>
</head>
</html>

Заменить на AND

Я также хочу добавить НОВЫЕ несколько структур тегов Div в тег Body в моем обновленном HTML-файле.

   <html>
        <head>
            <script>New Script code</script>
            <link rel="stylesheet" src="newCSS.css"/>
            <script type="text/javascript" src="newJavaScript.js"/>
        </head>
        <body>
                      <div>Hi Welcome</div>
                      <div>
                              <p>Paragraphs</p>
                      </div>
        </body>
     </html>

Пожалуйста помоги.:)

1 ответ

Вы можете использовать такую ​​библиотеку, как jsoup, чтобы изменить HTML и записать измененный HTML в тот же файл.

Что-то вроде этого:

try {
    File file = new File("index.html");
    Document doc = Jsoup.parse(file, "UTF-8");
    // clear the <head> element and add a new <script> element.
    doc.head().html("").appendElement("script")
            .attr("type", "text/javascript")
            .attr("src", "newScript.js");
    //write the changed HTML to the same file.
    try (BufferedWriter bw = new BufferedWriter(new FileWriter(file))) {
        bw.write(doc.html());
    }
} catch (IOException e) {
    e.printStackTrace();
}
Другие вопросы по тегам