Heim >Web-Frontend >Front-End-Fragen und Antworten >HTML in Word-Java umwandeln
Mit der Entwicklung der Internet-Technologie wurden immer mehr Anwendungen entwickelt, darunter HTML und Word, zwei Anwendungen, die wir häufig verwenden. HTML ist eine Auszeichnungssprache, die zum Erstellen von Webseiten und anderen Webdokumenten verwendet wird. Word ist ein Textbearbeitungsprogramm zum Erstellen und Bearbeiten von Dokumenten. Es gibt viele Situationen, in denen HTML in Word konvertiert werden muss, beispielsweise wenn Sie aus einem HTML-Dokument ein Word-Dokument zur Offline-Anzeige während der Website-Wartung erstellen müssen oder einen Online-Bericht in ein Dokument konvertieren müssen, das hochgeladen werden kann. In diesem Artikel werde ich vorstellen, wie man HTML mit Java-Code in ein Word-Dokument konvertiert.
fce2022be5e87c17c94245fd7ccbf1d9
<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.17</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>3.17</version> </dependency> <dependency> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> <version>1.10.1</version> </dependency>
d233ceef72c18d2307de4871b5eff5ad
8b05045a5be5764f313ed5b9168a17e6
100db36a723c770d327fc0aef2ce13b1
93f0f5c25f18dab9d176bd4f6de5d30e
<meta charset="UTF-8"> <title>HTML to Word Conversion</title>
9c3bca370b5104690d9ef395f2c5f8d1
6c04bd5ca3fcae76e30b72ad730ca86d
<h1>This is a sample HTML file</h1> <p>Here is some text that we will convert to Word format.</p> <ul> <li>List item 1</li> <li>List item 2</li> <li>List item 3</li> </ul> <br /> <ol> <li>Numered item 1</li> <li>Numered item 2</li> <li>Numered item 3</li> </ol>
36cc49f0c466276486e50c850b7e4956
73a6ac4ed44ffec12cee46588e518a5e
import java.io.*;
import org.apache.poi.xwpf.usermodel.*;
import org.jsoup.*;
import org.jsoup.nodes.*;
import org.jsoup.select. *;
public class HtmlToWordConverter {
public static void main(String[] args) { String inputFilePath = "D:\sample.html"; String outputFilePath = "D:\sample.docx"; convertHtmlToWord(inputFilePath, outputFilePath); } public static void convertHtmlToWord(String inputFilePath, String outputFilePath) { try { String html = readFile(inputFilePath); Document document = Jsoup.parse(html); XWPFDocument doc = new XWPFDocument(); Elements elements = document.body().children(); for (Element element : elements) { if (element.tagName().equals("h1")) { XWPFParagraph paragraph = doc.createParagraph(); XWPFRun run = paragraph.createRun(); run.setText(element.text()); run.setBold(true); } else if (element.tagName().equals("p")) { XWPFParagraph paragraph = doc.createParagraph(); XWPFRun run = paragraph.createRun(); run.setText(element.text()); } else if (element.tagName().equals("ul")) { XWPFParagraph paragraph = doc.createParagraph(); XWPFRun run = paragraph.createRun(); Elements listItems = element.children(); int i = 1; for (Element listItem : listItems) { run.setText(i + ". " + listItem.text() + "
");
i++; } } else if (element.tagName().equals("ol")) { XWPFParagraph paragraph = doc.createParagraph(); XWPFRun run = paragraph.createRun(); Elements listItems = element.children(); int i = 1; for (Element listItem : listItems) { run.setText(listItem.text() + "
");
i++; } } } FileOutputStream out = new FileOutputStream(outputFilePath); doc.write(out); out.close(); } catch (IOException ex) { System.out.println(ex.getMessage()); } } public static String readFile(String filePath) { try { BufferedReader reader = new BufferedReader(new FileReader(filePath)); StringBuilder stringBuilder = new StringBuilder(); String line; while ((line = reader.readLine()) != null) { stringBuilder.append(line); } return stringBuilder.toString(); } catch (IOException ex) { System.out.println(ex.getMessage()); return null; } }
}
java -cp ".;path-to-all-dependency-jars*" HtmlToWordConverter
Beachten Sie, dass Sie path-to-all-dependency-jars durch den Pfad zu allen heruntergeladenen Jars ersetzen müssen. Verwenden Sie in Windows-Betriebssystemen Semikolons, um Jars-Pfade zu trennen.
Nachdem der Code ausgeführt wurde, wird im angegebenen Ausgabepfad ein Word-Dokument mit dem Namen „sample.docx“ erstellt. Öffnen Sie das Word-Dokument und überprüfen Sie den Inhalt. Sie sehen etwas Ähnliches wie den Inhalt der HTML-Datei. Wenn Sie einer HTML-Datei ein Bild hinzufügen, wird es im Word-Dokument entsprechend angezeigt.
Fazit:
In diesem Beitrag haben wir vorgestellt, wie man HTML-Dateien mithilfe von Java-Code in Word-Dokumente konvertiert. Wir haben die Apache POI- und JSoup-Bibliotheken verwendet, um die HTML-Dateien zu lesen und sie in das Word-Dokumentformat zu konvertieren. In einfachen HTML-Dateien ist diese Methode sehr effizient und kann direkt verwendet werden. Bei komplexeren HTML-Dateien müssen Sie jedoch möglicherweise detailliertere Anpassungen vornehmen, je nachdem, in welches Zielformat Sie sie konvertieren möchten.
Das obige ist der detaillierte Inhalt vonHTML in Word-Java umwandeln. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!