Microsoft Word wird häufig zum Erstellen, Bearbeiten und Umwandeln von Word-Dokumenten (DOC/DOCX) in verschiedene Formate verwendet. Ähnlich ist Markdown eine einfache Auszeichnungssprache, die Sie verwenden können, um Formatierungselemente zu einfachen Textdokumenten hinzuzufügen. Es ist ein reines Textdokument, das lesbar sein soll, ohne dass Tags alles durcheinander bringen, aber es sollte immer noch Möglichkeiten geben, Textmodifikatoren wie Listen, Fettdruck, Kursivschrift usw. hinzuzufügen. Wenn wir also ein Word-Dokument haben und eine entsprechende Datei erstellen müssen in der Markdown-Syntax wird es schwierig, sie manuell zu erstellen. Eine programmatische Lösung kann das Problem jedoch lösen. In diesem Artikel werden alle Details zur Entwicklung eines Word-to-Markdown-Konverters mit Java Cloud SDK erläutert.
Word-to-Markdown-Konvertierungs-API
Unsere REST-basierte API namens Aspose.Words Cloud ist eine erstaunliche Lösung zur Implementierung von MS Word-Dokumenterstellungs-, -manipulations- und -konvertierungsvorgängen in eine Vielzahl von unterstützten Formaten. Um nun dieselben Dokumentkonvertierungs- und -verarbeitungsfunktionen in Java-Anwendungen zu implementieren, müssen wir Aspose.Words Cloud SDK for Java verwenden, das ein Wrapper um die REST-API ist. Daher müssen wir im ersten Schritt der SDK-Nutzung seine Referenz in unser Java-Projekt einfügen, indem wir die folgenden Informationen in pom.xml (Maven-Build-Typ-Projekt) einfügen.
<repositories>
<repository>
<id>aspose-cloud</id>
<name>artifact.aspose-cloud-releases</name>
<url>http://artifact.aspose.cloud/repo</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-words-cloud</artifactId>
<version>22.12.0</version>
</dependency>
</dependencies>
Nachdem die SDK-Referenz zum Projekt hinzugefügt wurde, besteht der nächste wichtige Schritt darin, Ihre Client-Anmeldeinformationen von Cloud Dashboard abzurufen. Andernfalls müssen Sie zuerst ein kostenloses Konto registrieren und dabei eine gültige E-Mail-Adresse verwenden.
Word zu MD in Java
In diesem Abschnitt werden die Schritte und zugehörigen Details erläutert, wie wir Word mithilfe des Java-Code-Snippets in das MD-Format konvertieren können. Wir werden zwei Optionen zum Laden des eingegebenen Word-Dokuments verwenden, dh aus dem Cloud-Speicher oder dem lokalen Laufwerk, und es dann in das Markdown-Format umwandeln.
Laden Sie das Word-Dokument vom lokalen Laufwerk
- Erstellen Sie zunächst eine Instanz von WordsApi und übergeben Sie personalisierte Anmeldeinformationen als Argumente
- Lesen Sie zweitens den Inhalt des eingegebenen Word-Dokuments mit der Methode Files.readAllBytes(…) und erhalten Sie den zurückgegebenen Wert in einem byte[]-Array
- Erstellen Sie drittens ein Objekt von ConvertDocumentRequest, das die Word-Eingabedatei, das MD-Format und den Namen der resultierenden Markdown-Datei als Argumente verwendet
- Rufen Sie nun die Methode convertDocument(…) für die Konvertierung von Word in MD auf. Der resultierende Markdown wird als Antwortstrom zurückgegeben, um in der Instanz byte[] gespeichert zu werden
- Um schließlich den resultierenden Markdown auf dem lokalen Laufwerk zu speichern, erstellen Sie ein Objekt von FileOutputStream und verwenden Sie dessen Methode write(…).
// Weitere Codeausschnitte finden Sie unter https://github.com/aspose-words-cloud/aspose-words-cloud-java
try
{
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// Wenn baseUrl null ist, verwendet WordsApi standardmäßig https://api.aspose.cloud
WordsApi wordsApi = new WordsApi(clientId, clientSecret, null);
// Laden Sie ein Word-Dokument aus dem lokalen System
File file1 = new File("sample_EmbeddedOLE.docx");
// Lesen Sie den Inhalt des eingegebenen Word-Dokuments
byte[] documentStream = Files.readAllBytes(file1.toPath());
// resultierendes Dateiformat
String format = "md";
// Erstellen Sie eine Dokumentkonvertierungsanforderung, in der wir den resultierenden Dateinamen angeben
ConvertDocumentRequest convertRequest = new ConvertDocumentRequest(documentStream,format, null,null, null, null);
// Führen Sie eine Wort-zu-Markdown-Konvertierung durch und speichern Sie die Ausgabe in einem Byte-Array
byte[] resultantFile = wordsApi.convertDocument(convertRequest);
// Speichern Sie die resultierende Markdown-Dokumentation auf einem lokalen Laufwerk
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "resultant.md");
fos.write(resultantFile);
fos.close();
}catch(Exception ex)
{
System.out.println(ex);
}
Sie können das Word-Eingabedokument von sampleEmbeddedOLE.docx herunterladen.
Word-Dokument aus Cloud Storage laden
- In ähnlicher Weise müssen wir zuerst eine Instanz von WordsApi erstellen, während wir personalisierte Anmeldeinformationen als Argumente übergeben
- Erstellen Sie zweitens ein Objekt von GetDocumentWithFormatRequest, das den Namen der eingegebenen Word-Datei, das MD-Format und den Namen der resultierenden Markdown-Datei als Argumente verwendet
- Rufen Sie schließlich die Methode getDocumentWithFormat(..) auf, die den Konvertierungsvorgang von Word zu Markdown auslöst. Die resultierende MD-Datei wird im Cloud-Speicher gespeichert
// Weitere Codeausschnitte finden Sie unter https://github.com/aspose-words-cloud/aspose-words-cloud-java
try
{
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// Wenn baseUrl null ist, verwendet WordsApi standardmäßig https://api.aspose.cloud
WordsApi wordsApi = new WordsApi(clientId, clientSecret, null);
String format = "md";
// Erstellen Sie nun ein neues Objekt von GetDocumentWithFormatRequest
GetDocumentWithFormatRequest convertRequest = new GetDocumentWithFormatRequest("sample_EmbeddedOLE.docx",format,null, null, null,null,null,"Converted.md",null);
// Rufen Sie nun die Methode auf, um die Konvertierungsoperation zu initiieren
// Die resultierende Datei wird im Cloud-Speicher gespeichert
wordsApi.getDocumentWithFormat(convertRequest);
}catch(Exception ex)
{
System.out.println(ex);
}
DOC zu Markdown mit cURL-Befehlen
Die REST-APIs bieten auch die Flexibilität, mit Hilfe von cURL-Befehlen von jeder Plattform aus darauf zuzugreifen. In diesem Abschnitt besprechen wir die Details zum Laden von Word-Dokumenten aus dem Cloud-Speicher, zur Konvertierung von DOCX in Markdown und zum Speichern der resultierenden MD-Datei auf einem lokalen Laufwerk. Jetzt müssen wir zuerst das JWT-Zugriffstoken (basierend auf den Client-Anmeldeinformationen) mit dem folgenden Befehl generieren und dann die DOCX-zu-Markdown-Konvertierung durchführen.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Sobald das JWT generiert ist, führen Sie bitte den folgenden Befehl aus, um das Word-Dokument aus dem Cloud-Speicher zu laden und die Word-zu-Markdown-Konvertierung durchzuführen. Die resultierende MD-Datei wird dann auf dem lokalen Laufwerk gespeichert
curl -v -X GET "https://api.aspose.cloud/v4.0/words/sample_EmbeddedOLE.docx?format=md" \
-H "accept: application/octet-stream" \
-H "Authorization: Bearer <JWT Token>" \
-o "newOutput.md"
Fazit
Wir sind am Ende dieses Artikels angelangt, wo wir die Details erfahren haben, wie wir Word mit Java programmgesteuert in Markdown konvertieren können. In ähnlicher Weise haben wir auch die Schritte zum Konvertieren von DOCX in Markdown über cURL-Befehle untersucht.
Eine weitere Option zum Erkunden der API-Funktionen ist SwaggerUI in einem Webbrowser. Wir empfehlen auch, die Produktdokumentation zu lesen, die eine erstaunliche Informationsquelle ist, um mehr über andere aufregende Funktionen zu erfahren. Falls Sie den Quellcode des Cloud SDK herunterladen und ändern müssen, ist er auf GitHub verfügbar (veröffentlicht unter MIT-Lizenz). Falls Sie bei der Verwendung der API auf Probleme stoßen, können Sie sich für eine schnelle Lösung über das kostenlose Produkt-Support-Forum an uns wenden.
Verwandte Artikel
Bitte besuchen Sie die folgenden Links, um mehr darüber zu erfahren: