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.
<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>
<meta charset="UTF-8"> <title>HTML to Word Conversion</title>
<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>
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!