1. Produkti
  2.   Izklājlapa
  3.   Java
  4.   Documents4J
 
  

Atvērtā pirmkoda Java bibliotēka izklājlapu dokumentiem

Pārveidojiet Excel failus Java lietojumprogrammās, izmantojot atvērtā koda API.

Documents4J ir atvērtā koda Java API, kas nodrošina Microsoft Excel konvertēšanu citos failu formātos. Tas tiek panākts, deleģējot konvertēšanu jebkurai vietējai lietojumprogrammai, kas saprot dotā faila konvertēšanu vēlamajā mērķa formātā. API piedāvā divu veidu vietējās un attālās ieviešanas. Izmantojot vietējo versiju, dokumentu var konvertēt tajā pašā mašīnā, kas ir pieprasītā faila formāta konvertēšanas kabelis. Izmantojot Remote API, jūs nosūtāt dokumentu uz serveri, izmantojot REST-API, un serveris veic pieprasīto konvertēšanu.

Documents4J ir caurspīdīgs un vienkārši lietojams. Izstrādātāji var strādāt ar vietējo API versiju, savukārt izstrāde un attālā versija var tikt izmantota, kad izstrādātāji publicē lietotni produkcijas versijā.

Previous Next

Darba sākšana ar Documents4J

Pirmkārt, vietējā datorā ir jāizveido document4j kopija. Vienkārši klonējiet document4j repozitoriju, izmantojot git vai klonējot to tieši GitHub. Kad repozitorijs ir klonēts, varat izveidot projektu, izmantojot Mave

Instalējiet Documents4J, izmantojot GitHub


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

Konvertējiet Microsoft Excel, izmantojot Java

Documents4J ir plūstoša API dokumentu konvertēšanai. API neatklāj nekādu informāciju par atbalsta pārveidotāja ieviešanu. Lai veiktu dokumentu konvertēšanu, API piedāvā IConverter interfeisu. Izmantojot šo saskarni, varat konvertēt Microsoft Excel faila formātu vēlamajā faila formātā. Lai uzzinātu atbalstītos konvertēšanas failu formātus, varat pieprasīt metodi getSupportedConversion(), kas atgriezīs avota un mērķa faila formātus.

Pārveidojiet Excel failu citā faila formātā, izmantojot 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)) )

Konvertējiet Office dokumentus PDF formātā, izmantojot Java

Atvērtā pirmkoda Documents4J bibliotēkā ir iekļauti vairāki svarīgi līdzekļi, lai pārveidotu Microsoft Office dokumentus, piemēram, Word, Excel un PowerPoint failus citos atbalsta failu formātos, piemēram, PDF vai attēlu utt. Šis piemērs parāda, cik viegli programmatūras programmētāji var ielādēt un konvertēt Microsoft Word Docx failu. uz PDF failu, izmantojot tikai dažas koda rindiņas.

Konvertējiet Office Docx failu uz PDF, izmantojot Java bibliotēku


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