Libreria Java open source per fogli di calcolo
Converti file Excel in applicazioni Java tramite API Open Source.
Documents4J è un'API Java open source dalla conversione di Microsoft Excel in altri formati di file. Ciò si ottiene delegando la conversione a qualsiasi applicazione nativa che comprenda la conversione del file specificato nel formato di destinazione desiderato. L'API offre due tipi di implementazioni locali e remote. Utilizzando la versione locale il documento può essere convertito sulla stessa macchina che è il cavo per convertire il formato di file richiesto. Utilizzando l'API remota, si invia un documento al server utilizzando l'API REST e il server esegue la conversione richiesta.
Documents4J è trasparente e semplice da usare. Gli sviluppatori possono lavorare con la versione locale dell'API mentre lo sviluppo e la versione remota possono essere usati quando gli sviluppatori pubblicano l'app nella produzione.
Guida introduttiva a Documents4J
Prima di tutto, devi creare una copia di documents4j sul tuo computer locale. Clona semplicemente il repository di documents4j usando git o clonandolo direttamente su GitHub. Una volta clonato il repository, puoi costruire il progetto usando Mave
Installa Documents4J tramite GitHub
git clone https://github.com/documents4j/documents4j.git
cd documents4j
mvn package
Converti Microsoft Excel usando Java
Documents4J è un'API fluente per eseguire la conversione dei documenti. L'API non espone alcun dettaglio dell'implementazione del convertitore di supporto. Per eseguire la conversione dei documenti, l'API offre l'interfaccia IConverter. Utilizzando questa interfaccia è possibile convertire il formato file di Microsoft Excel nel formato file desiderato. Per scoprire i formati di file di conversione supportati, puoi interrogare il metodo getSupportedConversion() che restituirà i formati di file di origine e di destinazione.
Convertire file Excel in altro formato file tramite Java
Const WdExportFormatPDF = 17
Const MagicFormatPDF = 999
Dim arguments
Set arguments = WScript.Arguments
' Transforms a file using MS Excel into the given format.
Function ConvertFile( inputFile, outputFile, formatEnumeration )
Dim fileSystemObject
Dim excelApplication
Dim excelDocument
' Get the running instance of MS Excel. If Excel is not running, exit the conversion.
On Error Resume Next
Set excelApplication = GetObject(, "Excel.Application")
If Err <> 0 Then
WScript.Quit -6
End If
On Error GoTo 0
' Find the source file on the file system.
Set fileSystemObject = CreateObject("Scripting.FileSystemObject")
inputFile = fileSystemObject.GetAbsolutePathName(inputFile)
' Convert the source file only if it exists.
If fileSystemObject.FileExists(inputFile) Then
' Attempt to open the source document.
On Error Resume Next
Set excelDocument = excelApplication.Workbooks.Open(inputFile, , True)
If Err <> 0 Then
WScript.Quit -2
End If
On Error GoTo 0
On Error Resume Next
If formatEnumeration = MagicFormatPDF Then
excelDocument.ExportAsFixedFormat xlTypePDF, outputFile
Else
excelDocument.SaveAs outputFile, formatEnumeration
End If
' Close the source document.
excelDocument.Close False
If Err <> 0 Then
WScript.Quit -3
End If
On Error GoTo 0
' Signal that the conversion was successful.
WScript.Quit 2
Else
' Files does not exist, could not convert
WScript.Quit -4
End If
End Function
' Execute the script.
Call ConvertFile( WScript.Arguments.Unnamed.Item(0), WScript.Arguments.Unnamed.Item(1), CInt(WScript.Arguments.Unnamed.Item(2)) )
Convertire documenti da ufficio a PDF via Java
La libreria Documents4J open source ha incluso diverse funzioni importanti per la conversione di documenti di ufficio Microsoft come Word, Excel e PowerPoint file in altri formati di file di supporto come PDF o immagine ecc. L'esempio seguente ha dimostrato quanto facilmente i programmatori del software possono caricare e converte un file Microsoft Word Docx in PDF file con solo un paio di linee di codice.
Convertire Office Docx a PDF via Java Biblioteca
public class NewMain {
/**
* @param args the command line arguments
* @throws java.io.FileNotFoundException
*/
public static void main(String[] args) throws FileNotFoundException, IOException, InterruptedException, ExecutionException {
ByteArrayOutputStream bo = new ByteArrayOutputStream();
InputStream in = new BufferedInputStream(new FileInputStream(System.getProperty("user.dir") + File.separator +"out.rtf"));
IConverter converter = LocalConverter.builder()
.baseFolder(new File(System.getProperty("user.dir") + File.separator +"test"))
.workerPool(20, 25, 2, TimeUnit.SECONDS)
.processTimeout(5, TimeUnit.SECONDS)
.build();
Future conversion = converter
.convert(in).as(DocumentType.RTF)
.to(bo).as(DocumentType.PDF)
.prioritizeWith(1000) // optional
.schedule();
conversion.get();
try (OutputStream outputStream = new FileOutputStream("out.pdf")) {
bo.writeTo(outputStream);
}
in.close();
bo.close();
}
}