Penelitian utama dalam makalah ini adalah pemrograman Java menggunakan OpenOffice untuk mengonversi DOC dan DOCX menjadi kode implementasi PDF, sebagai berikut.
OpenOffice, JodConverter
Ketika saya online untuk memeriksa cara menggunakan OpenOffice untuk transcoding, saya selalu perlu memulai layanan perangkat lunak dengan CMD terlebih dahulu. Perintah untuk memulai adalah: perangkat lunak -headless -accept = "socket, host = 127.0.0.1, port = 8100; urp;".
Tetapi pada kenyataannya, untuk proyek saya, transkode hanya sesekali dilakukan. Namun, setelah layanan transcoding OpenOffice dimulai, prosesnya (nama prosesnya adalah Software.exe) akan selalu ada dan menempati sekitar 100m memori, yang terasa sangat boros. Jadi saya memikirkan cara untuk memanggil perintah yang menjalankan layanan secara langsung dalam kode Java, dan kemudian ketika transcoding selesai, saya akan membunuh proses secara langsung. Akan ada penjelasan dalam kode Java di bawah ini.
Jadi, pada kenyataannya, langkah 2 ini dapat dilewati secara langsung
Setelah mendekompresi Jodconverter, tambahkan semua paket toples di bawah Lib ke proyek
Catatan: Instal OpenOffice
Paket CN; impor java.io.bufferedreader; impor java.io.file; impor java.io.filenotfoundException; impor java.io.ioException; impor java.io.inputStreamReader; impor com.artofsolving.jodconverter.documentter; com.artofsolving.jodconverter.openoffice.connection.openofficeconnection; impor com.artofsolving.jodconverter.openoffice.connection.socketopenofficeconnection; pend -convering * conversion * conversie * converTer.openoffice.converter.openofficed to Office; File SWF * @Author Administrator * */Konverter Kelas Publik {Private Static String OpenOffICePath = "E: // Instal Software // OpenOffice // Date"; // Jalur Instalasi Perangkat Lunak OpenOffice/** * Konversi Dokumen Kantor ke PDF. OpenOffice dan JodConverter-2.2.2 diperlukan untuk menjalankan fungsi ini * <pr Pre> * Contoh: * string sourcePath = "f: //office//source.doc"; * String destfile = "f: //pdf//dest.pdf"; * Converter.office2pdf (SourcePath, destfile); * </pri> * * @param sourceFile * file sumber, jalur absolut. Ini bisa menjadi dokumen dalam semua format Office2003-2007, dan belum diuji untuk Office2010. Termasuk .doc, * .docx, .xls, .xlsx, .ppt, .ppptx, dll. Contoh: f: //office//source.doc * @param destfile * file target. Jalur absolut. Contoh: f: //pdf//dest.pdf * @return Pesan cepat untuk sukses atau tidak. Jika -1 dikembalikan, itu berarti bahwa file sumber tidak dapat ditemukan, atau konfigurasi URL.Properties salah; Jika 0 dikembalikan, * berarti operasi berhasil; Jika 1 dikembalikan, itu berarti bahwa konversi telah gagal*/public static int Office2pdf (string sourceFile, String destfile) {coba {file inputFile = file baru (sourceFile); if (! inputFile.exists ()) {return -1; // Jika file sumber tidak dapat ditemukan, return -1}//jika target jalur itu tidak ada jalurnya, jika ada lintasan. (! OutputFile.getParentFile (). Exists ()) {outputFile.getParentFile (). mkdirs ();} string openOffice_home = OpenOfficePath; // Ini adalah direktori instalasi OpenOffice // jika karakter terakhir dari alamat URL dibaca dari file tidak '/,', 'jika ditambahkan' jika ditambahkan 'jika ditambahkan' jika ditambahkan ', (OpenOffice_Home.charat (OpenOffice_Home.Length () -1)! = '//') {OpenOffice_Home + = "//";} // Mulai Perintah Layanan OpenOffice = OpenOffice_Home + "Program;"; Runtime.getRuntime().exec(command);// connect to an OpenOffice.org instance running on port 8100 OpenOfficeConnection connection = new SocketOpenOfficeConnection( "127.0.0.1", 8100);connect.connect();// convert DocumentConverter converter = new OpenOfficeDocumentConverter( connection);converter.convert(inputFile, outputFile); // tutup koneksi koneksi.disconnect (); // tutup proses layanan openOffice pro.destroy (); return 0;} catch (filenotfoundException e) {e.printstacktrace (); return -1;} tangkap (ioException e) {e.printstacktrace (); return -1; Exception {String sourcePath = "C://Users//Administrator//Desktop//1//Group status list.xls";String destFile = "C://Users//Administrator//Desktop//1//dest.pdf";int flag = Converter.office2PDF(sourcePath, destFile);if (flag == 1) {System.out.println ("Konversi Gagal");} else if (flag == 0) {System.out.println ("Konversi sukses");} else {System.out.println ("File sumber tidak dapat ditemukan, atau url.properties error konfigurasi");}}}Di atas adalah seluruh konten artikel ini tentang Java menggunakan OpenOffice untuk mengonversi DOC dan DOCX menjadi kode instance PDF. Saya harap ini akan membantu semua orang. Teman yang tertarik dapat terus merujuk ke topik terkait lainnya di situs ini. Jika ada kekurangan, silakan tinggalkan pesan untuk menunjukkannya. Terima kasih teman atas dukungan Anda untuk situs ini!