Pergunta

Alguém tem alguma experiência com a fusão de correio de Java em um documento do Word? Preciso apoiar os formatos DOC e DOCX.

Eu ouvi falar de Apache Poi e Docx4J. No entanto, por ler, tenho certeza de quão boa é a palavra suporte em POI. O DOCX4J só suporta o formato DOCX, tanto quanto eu posso ver.

Qualquer pessoa pode sugerir um dos itens acima (e corrigir meu conhecimento sobre suporte) ou outra biblioteca apropriada. Se necessário, eu estaria disposto a usar um LIB para Doc e outro para o DOCX.

Obrigado.

Foi útil?

Solução

Trabalhar com documentos do MS Word é muito difícil. O formato do DOC é muito complicado, o DOCX é, em teoria, mais simples, mas é bastante novo e não há uma biblioteca Java Rich Java para trabalhar com ele e o DOC também.

As soluções mais fáceis para a maioria dos problemas relacionados ao trabalho com os documentos do MS Office são descritos no Artigo de Joel Spolsky. Espero que você possa usar esse método em seu aplicativo.

Outras dicas

Docx4j tem um MailMerger classe. Funciona, mas retira muita formatação no processo.

Dê uma olhada no OpenOffice para ver [manualmente] se ele pode produzir os tipos de arquivos necessários. Basta carregar alguns documentos e salvar alguns documentos e versões DOCX. Se os resultados passarem nesses testes manuais simples, então Docmose ou Jodreports pode automatizar isso de java.

Se você está aberto a soluções não livres, Aspose fornece o que parece ser muito sofisticado API Java para fusão de correio, entre outras coisas.

Eu precisava de algo semelhante e criei um projeto simples que permite fazer uma mérito de correio de um documento e dados do Word a partir de um arquivo Excel/CSV.

Você pode encontrar isso em https://github.com/Centic9/Poi-Mail-Merge, talvez já forneça o que você precisa aqui, caso contrário, é fácil adicionar mais recursos.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top