Apache POI এর মাধ্যমে Microsoft Word ডকুমেন্টের Metadata পরিচালনা এবং Extraction করা সম্ভব। Metadata হলো ডকুমেন্টের সম্পর্কে তথ্য যা ডকুমেন্টের কনটেন্টের বাইরে থাকে, যেমন লেখক, শিরোনাম, বিষয়বস্তু, তৈরি হওয়ার তারিখ ইত্যাদি। Apache POI আপনাকে এই Metadata পড়তে, পরিবর্তন করতে এবং পরিচালনা করতে সহায়তা করে।
Apache POI এর মাধ্যমে আপনি একটি Word ডকুমেন্ট থেকে Metadata এক্সট্র্যাক্ট (অথবা বের করা) করতে পারেন। Word ডকুমেন্টে বিভিন্ন ধরনের Metadata থাকতে পারে, যেমন:
এই Metadata গুলি XWPFProperties এবং CoreProperties ক্লাসের মাধ্যমে অ্যাক্সেস করা যেতে পারে।
import org.apache.poi.xwpf.usermodel.*;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
import java.io.FileInputStream;
import java.io.IOException;
public class MetadataExtractionExample {
public static void main(String[] args) throws IOException, InvalidFormatException {
// ডকুমেন্ট খুলতে একটি ফাইল ইনপুট স্ট্রিম তৈরি করা
FileInputStream fis = new FileInputStream("DocumentWithMetadata.docx");
// XWPFDocument ব্যবহার করে ডকুমেন্ট ওপেন করা
XWPFDocument document = new XWPFDocument(fis);
// Metadata এক্সট্র্যাক্ট করা
String title = document.getProperties().getCoreProperties().getTitle();
String subject = document.getProperties().getCoreProperties().getSubject();
String author = document.getProperties().getCoreProperties().getCreator();
String keywords = document.getProperties().getCoreProperties().getKeywords();
String lastModifiedBy = document.getProperties().getCoreProperties().getLastModifiedBy();
String created = document.getProperties().getCoreProperties().getCreated();
String modified = document.getProperties().getCoreProperties().getModified();
// Metadata প্রদর্শন করা
System.out.println("Title: " + title);
System.out.println("Subject: " + subject);
System.out.println("Author: " + author);
System.out.println("Keywords: " + keywords);
System.out.println("Last Modified By: " + lastModifiedBy);
System.out.println("Created: " + created);
System.out.println("Modified: " + modified);
}
}
Apache POI এর মাধ্যমে আপনি Word ডকুমেন্টের Metadata পরিবর্তন করতে পারেন। আপনি যেমন Title, Author, Keywords ইত্যাদি পরিবর্তন করতে পারেন। এটি CoreProperties ক্লাসের মাধ্যমে করা যায়।
import org.apache.poi.xwpf.usermodel.*;
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
import java.io.FileOutputStream;
import java.io.FileInputStream;
import java.io.IOException;
public class MetadataEditExample {
public static void main(String[] args) throws IOException, InvalidFormatException {
// ডকুমেন্ট খোলার জন্য একটি ফাইল ইনপুট স্ট্রিম তৈরি করা
FileInputStream fis = new FileInputStream("DocumentWithMetadata.docx");
// XWPFDocument ব্যবহার করে ডকুমেন্ট ওপেন করা
XWPFDocument document = new XWPFDocument(fis);
// Metadata পরিবর্তন করা
document.getProperties().getCoreProperties().setTitle("New Title");
document.getProperties().getCoreProperties().setSubject("New Subject");
document.getProperties().getCoreProperties().setCreator("New Author");
document.getProperties().getCoreProperties().setKeywords("New, Keywords");
// পরিবর্তিত ডকুমেন্ট সংরক্ষণ করা
try (FileOutputStream out = new FileOutputStream("UpdatedDocument.docx")) {
document.write(out);
}
System.out.println("Metadata সফলভাবে পরিবর্তন করা হয়েছে!");
}
}
Apache POI ব্যবহার করে আপনি আরও উন্নত Metadata অপারেশনও করতে পারেন, যেমন:
এই সমস্ত অপারেশনগুলি POIFSFileSystem এবং Custom Property API এর মাধ্যমে সম্ভব।
Apache POI ব্যবহার করে আপনি Microsoft Word ডকুমেন্টের Metadata খুব সহজে এক্সট্র্যাক্ট এবং পরিবর্তন করতে পারেন। CoreProperties ক্লাসের মাধ্যমে আপনি ডকুমেন্টের বিভিন্ন Metadata (যেমন Title, Subject, Author, Keywords) পড়তে এবং সম্পাদনা করতে পারেন। এই ফিচারটি ডকুমেন্টের তথ্য ব্যবস্থাপনার জন্য অত্যন্ত কার্যকরী, বিশেষ করে যদি আপনার ডকুমেন্টগুলির মধ্যে নির্দিষ্ট তথ্য দ্রুত খুঁজে বের করার প্রয়োজন হয়। Custom Properties এবং Document Properties ব্যবস্থাপনা দিয়ে আরও উন্নত কাজ করা যেতে পারে।
common.read_more