Converter arquivos HTML para Word DOCX DOC em Java

Em vários casos, pode ser necessário converter o conteúdo HTML em um documento do Word. Por exemplo, para gerar o documento a partir de um editor HTML WYSIWYG ou converter uma página da Web para o formato DOCX ou DOC. Para realizar essa conversão programaticamente, este artigo aborda como converter arquivos HTML para Word DOCX, DOC, DOCM ou outros formatos em Java.

Biblioteca Java para converter HTML em Word

Para converter HTML para DOCX, DOC, DOT, DOCM e outros formatos do Word, usaremos Aspose.Words for Java. É uma biblioteca poderosa para criar e manipular documentos do Word programaticamente. Além disso, ele fornece um conversor de documentos integrado que fornece conversão de alta fidelidade de/para documentos de processamento de texto. Você pode baixar o JAR da API na seção de downloads ou instalá-lo usando as seguintes configurações do Maven em pom.xml.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-words</artifactId>
    <version>21.11</version>
    <type>pom</type>
</dependency>

Converter HTML para DOCX/DOC/DOCM em Java

Usando Aspose.Words para Java, a conversão de um arquivo HTML para o formato Word pode ser feita em algumas etapas, mencionadas abaixo.

A enumeração SaveFormat no método Document.save() especifica o formato no qual você deseja converter o arquivo HTML. O exemplo de código a seguir mostra como gerar um documento do Word de HTML em Java.

// Carregar arquivo HTML usando a classe Document
Document document = new Document("template.html");

// Converter arquivo HTML para o formato Word DOCX
document.save("output.docx", SaveFormat.DOCX); 

Converter uma página da Web em Word usando URL em Java

Você também pode converter uma página da Web em um documento do Word diretamente de seu URL. A seguir estão as etapas para converter HTML em DOCX usando URL em Java.

O exemplo de código a seguir mostra como converter uma página da Web em um documento do Word usando uma URL.

// Criar e inicializar URL
URL oracleURL = new URL("https://docs.oracle.com/javase/tutorial/networking/urls/readingURL.html");

// Obter página da web como fluxo de entrada
InputStream is = oracleURL.openStream();

// Inicializar opções de carregamento HTML
HtmlLoadOptions htmloptions = new HtmlLoadOptions();

// Carregar fluxo no objeto Documento
Document doc = new Document(is, htmloptions);

// Salvar como DOCX
doc.save("output.docx", SaveFormat.DOCX);

Converter uma string HTML em Word usando Java

Aspose.Words para Java também permite que você gere um documento do Word a partir de uma string HTML dinamicamente. A seguir estão as etapas para realizar esta operação.

O exemplo de código a seguir mostra como converter uma string HTML em um arquivo DOCX usando Java.

// Criar um novo documento
Document doc = new Document();

// Criar um construtor de documentos
DocumentBuilder builder = new DocumentBuilder(doc);

// Inserir HTML
builder.insertHtml("<ul>\r\n" + 
    "<li>Item1</li>\r\n" + 
    "<li>Item2</li>\r\n" + 
    "</ul>");

// Salvar como DOCX
doc.save("html-string-to-word.docx", SaveFormat.DOCX);

Obtenha uma licença de API gratuita

Você pode usar o Aspose.Words para Java sem limitações de avaliação obtendo uma licença temporária gratuita.

Conclusão

Neste artigo, você aprendeu como converter arquivos HTML para Word DOCX, DOC, DOCM ou outros formatos programaticamente usando Java. Além disso, você viu como converter uma string HTML ou uma página da Web de um URL para um documento do Word dinamicamente. Você pode simplesmente instalar o Aspose.Words para Java e usar o código fornecido para construir seu conversor de HTML para Word. Além disso, você pode visitar a documentação para explorar mais sobre o Aspose.Words for Java. Além disso, você pode compartilhar suas dúvidas conosco em nosso fórum.

Veja também

Informações: Se você precisar obter um documento do Word de uma apresentação do PowerPoint, poderá usar o conversor Aspose Apresentação para documento do Word.