Você pode converter EPUB para MHTML usando duas etapas simples. Primeiro você precisa renderizar o arquivo EPUB para DOC usando Aspose.PDF for Java . Depois disso, usando a poderosa API de processamento de documentos Aspose.Words for Java , você pode converter DOC para MHTML. Ambas as APIs estão no pacote Aspose.Total for Java .
API Java para converter EPUB em MHTML
Requisitos de conversão
Você pode facilmente usar o Aspose.Total para Java diretamente de um projeto baseado em Maven e inclua Aspose.PDF for Java e Aspose.Words for Java em seu pom.xml.
Como alternativa, você pode obter um arquivo ZIP em downloads .
Requisitos de conversão
Ao converter EPUB para MHTML, mesmo que seu documento esteja protegido por senha, você ainda pode abri-lo usando a API de manipulação de PDF Aspose.PDF for Java . Para abrir o arquivo criptografado, você precisa criar um objeto Document e abrir o EPUB usando a senha do proprietário.
Abrir documento EPUB protegido por senha via Java
Ao salvar seu documento de entrada no formato de arquivo MHTML, você também pode salvar seu documento no banco de dados em vez de em um sistema de arquivos. Pode ser necessário implementar o armazenamento e a recuperação de objetos Document de e para um banco de dados. Isso seria necessário se você estivesse implementando qualquer tipo de sistema de gerenciamento de conteúdo. Para salvar seu MHTML no banco de dados, muitas vezes é necessário serializar o documento para obter uma matriz de bytes. Isso pode ser feito usando a API Aspose.Words for Java . Depois de obter sua matriz de bytes, você pode armazená-la no banco de dados usando a instrução SQL.
public static void StoreToDatabase(Document doc, Connection mConnection) throws Exception {
// create an output stream which uses byte array to save data
ByteArrayOutputStream aout = new ByteArrayOutputStream();
// save the document to byte array
doc.save(aout, SaveFormat.MHTML);
// get the byte array from output steam
// the byte array now contains the document
byte[] buffer = aout.toByteArray();
// get the filename from the document.
String fileName = doc.getOriginalFileName();
String filePath = fileName.replace("\\", "\\\\");
// create the SQL command.
String commandString = "INSERT INTO Documents (FileName, FileContent) VALUES('" + filePath + "', '" + buffer + "')";
Statement statement = mConnection.createStatement();
statement.executeUpdate(commandString);
}