Menentukan Format Dokumen di Aspose.Words untuk Java
Pengantar Menentukan Format Dokumen di Aspose.Words for Java
Saat bekerja dengan pemrosesan dokumen di Java, penting untuk menentukan format file yang Anda tangani. Aspose.Words untuk Java menyediakan fitur canggih untuk mengidentifikasi format dokumen, dan kami akan memandu Anda melalui prosesnya.
Prasyarat
Sebelum kita mulai, pastikan Anda memiliki prasyarat berikut:
- Aspose.Kata-kata untuk Java
- Java Development Kit (JDK) diinstal pada sistem Anda
- Pengetahuan dasar tentang pemrograman Java
Langkah 1: Pengaturan Direktori
Pertama, kita perlu menyiapkan direktori yang diperlukan untuk mengatur file kita secara efektif. Kami akan membuat direktori untuk tipe dokumen berbeda.
File supportedDir = new File("Your Directory Path" + "Supported");
File unknownDir = new File("Your Directory Path" + "Unknown");
File encryptedDir = new File("Your Directory Path" + "Encrypted");
File pre97Dir = new File("Your Directory Path" + "Pre97");
// Buat direktori jika belum ada.
if (!supportedDir.exists())
supportedDir.mkdir();
if (!unknownDir.exists())
unknownDir.mkdir();
if (!encryptedDir.exists())
encryptedDir.mkdir();
if (!pre97Dir.exists())
pre97Dir.mkdir();
Kami telah membuat direktori untuk jenis dokumen yang didukung, tidak dikenal, terenkripsi, dan pra-97.
Langkah 2: Mendeteksi Format Dokumen
Sekarang, mari kita deteksi format dokumen di direktori kita. Kami akan menggunakan Aspose.Words untuk Java untuk mencapai hal ini.
Set<String> listFiles = Stream.of(new File("Your Directory Path").listFiles())
.filter(file -> !file.getName().endsWith("Corrupted document.docx") && !Files.isDirectory(file.toPath()))
.map(File::getPath)
.collect(Collectors.toSet());
for (String fileName : listFiles) {
String nameOnly = Paths.get(fileName).getFileName().toString();
System.out.println(nameOnly);
FileFormatInfo info = FileFormatUtil.detectFileFormat(fileName);
// Menampilkan jenis dokumen
switch (info.getLoadFormat()) {
case LoadFormat.DOC:
System.out.println("\tMicrosoft Word 97-2003 document.");
break;
// Tambahkan case untuk format dokumen lain sesuai kebutuhan
}
// Menangani dokumen terenkripsi
if (info.isEncrypted()) {
System.out.println("\tAn encrypted document.");
FileUtils.copyFile(new File(fileName), new File(encryptedDir, nameOnly));
} else {
// Menangani jenis dokumen lainnya
switch (info.getLoadFormat()) {
case LoadFormat.DOC_PRE_WORD_60:
FileUtils.copyFile(new File(fileName), new File(pre97Dir, nameOnly));
break;
case LoadFormat.UNKNOWN:
FileUtils.copyFile(new File(fileName), new File(unknownDir, nameOnly));
break;
default:
FileUtils.copyFile(new File(fileName), new File(supportedDir, nameOnly));
break;
}
}
}
Dalam cuplikan kode ini, kami menelusuri file, mendeteksi formatnya, dan mengaturnya ke dalam direktori masing-masing.
Source Code Lengkap Untuk Menentukan Format Dokumen di Aspose.Words for Java
File supportedDir = new File("Your Directory Path" + "Supported");
File unknownDir = new File("Your Directory Path" + "Unknown");
File encryptedDir = new File("Your Directory Path" + "Encrypted");
File pre97Dir = new File("Your Directory Path" + "Pre97");
// Buat direktori jika belum ada.
if (supportedDir.exists() == false)
supportedDir.mkdir();
if (unknownDir.exists() == false)
unknownDir.mkdir();
if (encryptedDir.exists() == false)
encryptedDir.mkdir();
if (pre97Dir.exists() == false)
pre97Dir.mkdir();
Set<String> listFiles = Stream.of(new File("Your Directory Path").listFiles())
.filter(file -> !file.getName().endsWith("Corrupted document.docx") && !Files.isDirectory(file.toPath()))
.map(File::getPath)
.collect(Collectors.toSet());
for (String fileName : listFiles) {
String nameOnly = Paths.get(fileName).getFileName().toString();
System.out.println(nameOnly);
FileFormatInfo info = FileFormatUtil.detectFileFormat(fileName);
// Menampilkan jenis dokumen
switch (info.getLoadFormat()) {
case LoadFormat.DOC:
System.out.println("\tMicrosoft Word 97-2003 document.");
break;
case LoadFormat.DOT:
System.out.println("\tMicrosoft Word 97-2003 template.");
break;
case LoadFormat.DOCX:
System.out.println("\tOffice Open XML WordprocessingML Macro-Free Document.");
break;
case LoadFormat.DOCM:
System.out.println("\tOffice Open XML WordprocessingML Macro-Enabled Document.");
break;
case LoadFormat.DOTX:
System.out.println("\tOffice Open XML WordprocessingML Macro-Free Template.");
break;
case LoadFormat.DOTM:
System.out.println("\tOffice Open XML WordprocessingML Macro-Enabled Template.");
break;
case LoadFormat.FLAT_OPC:
System.out.println("\tFlat OPC document.");
break;
case LoadFormat.RTF:
System.out.println("\tRTF format.");
break;
case LoadFormat.WORD_ML:
System.out.println("\tMicrosoft Word 2003 WordprocessingML format.");
break;
case LoadFormat.HTML:
System.out.println("\tHTML format.");
break;
case LoadFormat.MHTML:
System.out.println("\tMHTML (Web archive) format.");
break;
case LoadFormat.ODT:
System.out.println("\tOpenDocument Text.");
break;
case LoadFormat.OTT:
System.out.println("\tOpenDocument Text Template.");
break;
case LoadFormat.DOC_PRE_WORD_60:
System.out.println("\tMS Word 6 or Word 95 format.");
break;
case LoadFormat.UNKNOWN:
System.out.println("\tUnknown format.");
break;
}
if (info.isEncrypted()) {
System.out.println("\tAn encrypted document.");
FileUtils.copyFile(new File(fileName), new File(encryptedDir, nameOnly));
} else {
switch (info.getLoadFormat()) {
case LoadFormat.DOC_PRE_WORD_60:
FileUtils.copyFile(new File(fileName), new File(pre97Dir, nameOnly));
break;
case LoadFormat.UNKNOWN:
FileUtils.copyFile(new File(fileName), new File(unknownDir, nameOnly));
break;
default:
FileUtils.copyFile(new File(fileName), new File(supportedDir, nameOnly));
break;
}
}
}
Kesimpulan
Menentukan format dokumen di Aspose.Words untuk Java sangat penting untuk pemrosesan dokumen yang efisien. Dengan langkah-langkah yang dijelaskan dalam panduan ini, Anda dapat mengidentifikasi jenis dokumen dan menanganinya sesuai dengan aplikasi Java Anda.
FAQ
Bagaimana cara menginstal Aspose.Words untuk Java?
Anda dapat mengunduh Aspose.Words untuk Java dariDi Sini dan ikuti petunjuk instalasi yang diberikan.
Apa format dokumen yang didukung?
Aspose.Words untuk Java mendukung berbagai format dokumen, termasuk DOC, DOCX, RTF, HTML, dan banyak lagi. Anda dapat merujuk ke dokumentasi untuk daftar lengkap.
Bagaimana cara mendeteksi dokumen terenkripsi menggunakan Aspose.Words untuk Java?
Anda dapat menggunakanFileFormatUtil.detectFileFormat()
metode untuk mendeteksi dokumen terenkripsi, seperti yang ditunjukkan dalam panduan ini.
Apakah ada batasan saat bekerja dengan format dokumen lama?
Format dokumen lama, seperti MS Word 6 atau Word 95, mungkin memiliki keterbatasan dalam hal fitur dan kompatibilitas dengan aplikasi modern. Pertimbangkan untuk meningkatkan atau mengonversi dokumen-dokumen ini bila diperlukan.
Bisakah saya mengotomatiskan deteksi format dokumen di aplikasi Java saya?
Ya, Anda dapat mengotomatiskan deteksi format dokumen dengan mengintegrasikan kode yang disediakan ke dalam aplikasi Java Anda. Ini memungkinkan Anda memproses dokumen berdasarkan format yang terdeteksi.