HTML-Dokument in Java speichern

Das Paket aspose.html.Saving wird von Datenklassen für eine Beschreibung spezifischer Speicheroptionen beim Konvertierungs- und Speicherprozess präsentiert. Nachdem Sie mit einer HTML-Datei gearbeitet oder ein HTML-Dokument von Grund auf neu erstellt haben, können Sie Änderungen mit einer der Methoden HTMLDocument.save() speichern. Die Java-Bibliothek stellt die Klassen [SaveOptions]https://reference.aspose.com/html/java/com.aspose.html.saving/saveoptions/ und ResourceHandlingOptions zur Verfügung, mit denen Sie Optionen für Speichervorgänge festlegen können.

Die Aspose.HTML for Java-Bibliothek hat zwei unterschiedliche Konzepte für die Erstellung der Ausgabedateien:

  • Das erste Konzept basiert auf der Erstellung von HTML-ähnlichen Dateien als Ausgabe - HTML, MHTML, Markdown und SVG-Dateien. Die SaveOptions ist eine Basisklasse für diesen Ansatz, die den Speichervorgang der zugehörigen Ressourcen wie Skripte, Stile, Bilder usw. unterstützt.
  • Das zweite Konzept könnte verwendet werden, um HTML als Ergebnis visuell darzustellen. Die Basisklasse für dieses Konzept ist RenderingOptions; sie verfügt über spezielle Methoden zur Angabe der Seitengröße, der Seitenränder, der Auflösung, der Benutzerstile usw.

Dieser Artikel beschreibt nur, wie man die Klasse SaveOptions und die Methoden save() zum Speichern von HTML-Dokumenten verwendet. Um mehr über den Rendering-Mechanismus zu erfahren, lesen Sie bitte den Artikel Feinabstimmungskonverter.

HTML speichern

Wenn Sie Ihre Änderungen in HTML abgeschlossen haben, sollten Sie das Dokument mit einer der Methoden HTMLDocument.save() speichern. Das folgende Beispiel ist der einfachste Weg, eine HTML-Datei zu speichern:

 1// Save HTML to a file using Java
 2
 3// Initialize an empty HTML document
 4HTMLDocument document = new HTMLDocument();
 5
 6// Create a text node and add it to the document
 7Text text = document.createTextNode("Hello, World!");
 8document.getBody().appendChild(text);
 9
10// Save the HTML document to a file
11document.save("save-to-file.html");

Das obige Beispiel ist recht einfach. In realen Anwendungen benötigen Sie jedoch oft zusätzliche Kontrolle über den Speichervorgang. In den nächsten Abschnitten wird beschrieben, wie Sie die Optionen zur Ressourcenbehandlung nutzen oder Ihr Dokument in den verschiedenen Formaten speichern können.

HTML in Datei speichern

Der folgende Codeschnipsel zeigt, wie man ResourceHandlingOptions verwendet, um verknüpfte Dokumente zu verwalten. Wir erstellen eine einfache HTML-Datei von Grund auf mit einem verknüpften Dokument namens “linked.html” im Beispiel.

Um die Speicheroptionen anzuwenden, verwenden wir den Konstruktor HTMLSaveOptions(), um eine Instanz der Klasse HTMLSaveOptions zu erzeugen. Dann setzen wir mit der Methode getResourceHandlingOptions() die maximale Behandlungstiefe für verknüpfte Ressourcen in den Speicheroptionen auf 1. Das bedeutet, dass das Speichern des HTML-Dokuments das Hauptdokument und alle direkt verknüpften Ressourcen bis zu einer Tiefe von 1 umfasst. Und schließlich rufen wir die Methode save(path, options) des Dokumentobjekts zusammen mit den angegebenen Speicheroptionen auf.

 1// Save HTML with a linked resources using Java
 2
 3// Prepare a simple HTML file with a linked document
 4java.nio.file.Files.write(
 5        java.nio.file.Paths.get("save-with-linked-file.html"),
 6        "<p>Hello, World!</p><a href='linked.html'>linked file</a>".getBytes());
 7
 8// Prepare a simple linked HTML file
 9java.nio.file.Files.write(java.nio.file.Paths.get("linked.html"),
10        "<p>Hello, linked file!</p>".getBytes());
11
12// Load the "save-with-linked-file.html" into memory
13HTMLDocument document = new HTMLDocument("save-with-linked-file.html");
14
15// Create an instance of the HTMLSaveOptions class
16HTMLSaveOptions options = new HTMLSaveOptions();
17
18// The following line with the value "0" cuts off all other linked HTML-files while saving this instance
19// If you remove this line or change the value to "1", the "linked.html" file will be saved as well to the output folder
20options.getResourceHandlingOptions().setMaxHandlingDepth(1);
21
22// Save the document with the save options
23document.save("save-with-linked-file_out.html", options);

HTML in MHTML speichern

In manchen Fällen müssen Sie Ihr HTML-Dokument als eine einzige MHTML-Datei speichern. das Dokument MHTML kann für diesen Zweck sehr nützlich sein, da es ein Webseitenarchiv ist und alles in sich selbst speichert. Das HTMLSaveFormat gibt das Format an, in dem das Dokument gespeichert wird, es können die Formate HTML, MHTML und MD sein. Das folgende Beispiel zeigt, wie die Methode save(path, saveFormat) zum Speichern von HTML in MHTML verwendet wird.

 1// Save HTML as MHTML using Java
 2
 3// Prepare a simple HTML file with a linked document
 4java.nio.file.Files.write(
 5        java.nio.file.Paths.get("document.html"),
 6        "<p>Hello, World!</p><a href='linked-file.html'>linked file</a>".getBytes());
 7
 8// Prepare a simple linked HTML file
 9java.nio.file.Files.write(
10        java.nio.file.Paths.get("linked-file.html"),
11        "<p>Hello, linked file!</p>".getBytes());
12
13// Load the "document.html" into memory
14HTMLDocument document = new HTMLDocument("document.html");
15
16// Save the document to MHTML format
17document.save("save-to-MTHML.mht", HTMLSaveFormat.MHTML);

Wie beim Beispiel HTML to File können Sie auch MHTMLSaveOptions verwenden und die gewünschten Bearbeitungsoptionen anpassen.

HTML in Markdown speichern

Markdown ist eine Auszeichnungssprache mit Klartext-Syntax. Um Markdown-Dateien mit Aspose.HTML zu erstellen, sehen Sie sich bitte das folgende Beispiel an:

 1// Save HTML as a Markdown file using Java
 2
 3// Prepare HTML code
 4String html_code = "<H2>Hello, World!</H2>";
 5
 6// Initialize a document from a string variable
 7HTMLDocument document = new HTMLDocument(html_code, ".");
 8
 9// Save the document as a Markdown file
10document.save("save-to-MD.md", HTMLSaveFormat.Markdown);

Aspose.HTML for Java bietet neben der Funktion zum Speichern von HTML zu Markdown auch einen HTML zu Markdown Konverter. Weitere Informationen zur Verwendung des Markdown-Konverters finden Sie im Artikel HTML to Markdown.

SVG speichern

Normalerweise sehen Sie das SVG-Dokument als Teil einer HTML-Datei; es stellt die Vektordaten auf der Seite dar: Bilder, Icons, Tabellen usw. SVG kann jedoch auch aus der Webseite extrahiert werden, und Sie können es ähnlich wie das HTML-Dokument bearbeiten. Da SVGDocument und HTMLDocument auf demselben WHATWG DOM Standard basieren, sind alle Vorgänge wie Laden, Lesen, Bearbeiten, Konvertieren und Speichern für beide Dokumente ähnlich. Daher sind alle Beispiele, in denen Sie Manipulationen mit HTMLDocument sehen können, auch auf SVGDocument anwendbar.

Um Ihre Änderungen in SVG zu speichern, gehen Sie bitte wie folgt vor:

 1// Save HTML as SVG using Java
 2
 3// Prepare SVG code
 4String code = "<svg xmlns='http://www.w3.org/2000/svg' height='200' width='300'>" +
 5        "<g fill='none' stroke-width= '10' stroke-dasharray='30 10'>" +
 6        "<path stroke='red' d='M 25 40 l 215 0' />" +
 7        "<path stroke='black' d='M 35 80 l 215 0' />" +
 8        "<path stroke='blue' d='M 45 120 l 215 0' />" +
 9        "</g>" +
10        "</svg>";
11
12// Initialize an SVG instance from the content string
13SVGDocument document = new SVGDocument(code, ".");
14
15// Save the SVG file to disk
16document.save("save-to-SVG.svg");

Fazit

  1. Das Paket aspose.html.Saving ermöglicht Entwicklern, den Speichervorgang von HTML- und SVG-Dokumenten mithilfe erweiterter Optionen wie SaveOptions und ResourceHandlingOptions anzupassen und zu optimieren. Mit diesen Klassen können Sie verknüpfte Ressourcen effizient verwalten, bestimmte Ausgabeformate auswählen und den Speichervorgang an die Anforderungen Ihrer Anwendung anpassen.

  2. Aspose.HTML for Java ermöglicht das Speichern von HTML-Dokumenten in verschiedenen Formaten, darunter HTML, MHTML und Markdown, und bietet präzise Kontrolle und Einfachheit.

  3. Die Beispiele in diesem Artikel veranschaulichen die Einfachheit und Leistungsfähigkeit von Speichervorgängen. Weitere Informationen zu Rendering-Optionen und anderen erweiterten Funktionen finden Sie im Artikel Feinabstimmungskonverter.

Die vollständigen Beispiele und Datendateien können Sie unter GitHub herunterladen.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.