1. Produkter
  2.   Regneark
  3.   Java
  4.   Documents4J
 
  

Open Source Java Library for regnearkdokumenter

Konverter Excel-filer i Java-apper via Open Source API.

Documents4J er en åpen kildekode Java API fra konvertering av Microsoft Excel til andre filformater. Dette oppnås ved å delegere konverteringen til et hvilket som helst innfødt program som forstår konverteringen av den gitte filen til ønsket målformat. API-en tilbyr to typer implementeringer lokalt og eksternt. Ved å bruke den lokale versjonen kan dokumentet konverteres på samme maskin som er kabelen til å konvertere det forespurte filformatet. Ved å bruke Remote API sender du et dokument til serveren ved hjelp av REST-API og serveren utfører den forespurte konverteringen.

Documents4J er gjennomsiktig og enkel å bruke. Utviklere kan jobbe med den lokale versjonen av API mens utvikling og ekstern versjon kan brukes når utviklerne publiserer appen på produksjonen.

Previous Next

Komme i gang med Documents4J

Først av alt må du lage en kopi av documents4j på din lokale maskin. Bare klone documents4js depot ved å bruke git eller ved å klone det direkte på GitHub. Når depotet er klonet, kan du bygge prosjektet ved å bruke Mave

Installer Documents4J via GitHub


git clone https://github.com/documents4j/documents4j.git
cd documents4j
mvn package
            

Konverter Microsoft Excel ved hjelp av Java

Documents4J er et flytende API for å utføre dokumentkonvertering. API-en viser ingen detaljer om implementeringen av støtteomformeren. For å utføre dokumentkonvertering tilbyr APIen IConverter-grensesnitt. Ved å bruke dette grensesnittet kan du konvertere Microsoft Excel-filformatet til ønsket filformat. For å finne ut hvilke konverteringsfilformater som støttes, kan du spørre getSupportedConversion()-metoden som vil returnere kilde- og målfilformatene.

Konverter Excel-fil til annet filformat via 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)) )

Konverter Office-dokumenter til PDF via Java

Open source Documents4J-biblioteket har inkludert flere viktige funksjoner for å konvertere Microsoft Office-dokumenter som Word, Excel og PowerPoint-filer til andre støttefilformater som PDF eller bilde osv. Følgende eksempel demonstrerte hvor enkelt programvareprogrammerere kan laste inn og konvertere en Microsoft Word Docx-fil til PDF-fil med bare et par linjer med kode.

Konverter Office Docx-fil til PDF via Java Library


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();
}
}
 Norsk