অ্যাপাচি পিওআই (Apache POI) একটি শক্তিশালী ওপেন সোর্স লাইব্রেরি যা মাইক্রোসফট অফিস ফাইল ফরম্যাট (যেমন Word, Excel, PowerPoint) থেকে ডেটা পড়তে, লেখতে এবং সংশোধন করতে ব্যবহৃত হয়। Apache POI বিভিন্ন মডিউলের মাধ্যমে Microsoft Office ফাইলের সঙ্গ কাজ করতে সক্ষম। এই মডিউলগুলি Excel, Word, PowerPoint, এবং অন্যান্য ফাইল ফরম্যাটের জন্য আলাদা আলাদা প্যাকেজ প্রদান করে। নিচে উল্লেখিত মডিউলগুলি Apache POI এর মূল উপাদান:
HSSF মডিউলটি XLS ফাইল ফরম্যাট (Microsoft Excel 97-2003) এর জন্য ব্যবহৃত হয়। এটি পুরানো Excel ফাইল ফরম্যাটের জন্য তৈরি এবং এর মাধ্যমে আপনি Excel ফাইলের মধ্যে ডেটা লেখার, পড়ার এবং সম্পাদনা করার কাজ করতে পারেন।
import org.apache.poi.hssf.usermodel.*;
import java.io.*;
public class HSSFExample {
public static void main(String[] args) throws Exception {
// নতুন Excel ফাইল তৈরি
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.createSheet("Sheet1");
// একটি রো এবং কলাম তৈরি
HSSFRow row = sheet.createRow(0);
HSSFCell cell = row.createCell(0);
cell.setCellValue("Hello Apache POI");
// ফাইল সংরক্ষণ করা
FileOutputStream fileOut = new FileOutputStream("workbook.xls");
workbook.write(fileOut);
fileOut.close();
}
}
XSSF মডিউলটি XLSX ফাইল ফরম্যাট (Microsoft Excel 2007 এবং পরবর্তী সংস্করণ) এর জন্য ব্যবহৃত হয়। এটি নতুন Excel ফাইল ফরম্যাটের সাথে কাজ করার জন্য ডিজাইন করা হয়েছে এবং এটি XML ভিত্তিক।
import org.apache.poi.xssf.usermodel.*;
import java.io.*;
public class XSSFExample {
public static void main(String[] args) throws Exception {
// নতুন Excel ফাইল তৈরি
XSSFWorkbook workbook = new XSSFWorkbook();
XSSFSheet sheet = workbook.createSheet("Sheet1");
// একটি রো এবং কলাম তৈরি
XSSFRow row = sheet.createRow(0);
XSSFCell cell = row.createCell(0);
cell.setCellValue("Hello Apache POI");
// ফাইল সংরক্ষণ করা
FileOutputStream fileOut = new FileOutputStream("workbook.xlsx");
workbook.write(fileOut);
fileOut.close();
}
}
HWPF মডিউলটি DOC ফাইল ফরম্যাট (Microsoft Word 97-2003) এর জন্য ব্যবহৃত হয়। এটি পুরানো Word ফাইল ফরম্যাটে ডেটা এক্সট্র্যাক্ট, সম্পাদনা এবং তৈরি করতে সক্ষম।
import org.apache.poi.hwpf.usermodel.*;
import java.io.*;
public class HWPFExample {
public static void main(String[] args) throws Exception {
// Word ডক তৈরি
HWPFDocument document = new HWPFDocument();
Range range = document.getRange();
range.insertAfter("Hello, Apache POI!");
// ফাইল সংরক্ষণ করা
FileOutputStream out = new FileOutputStream("document.doc");
document.write(out);
out.close();
}
}
XWPF মডিউলটি DOCX ফাইল ফরম্যাট (Microsoft Word 2007 এবং পরবর্তী সংস্করণ) এর জন্য ব্যবহৃত হয়। এটি XML ভিত্তিক এবং Word ফাইলগুলির সাথে আধুনিক ফিচার সমর্থন করে।
import org.apache.poi.xwpf.usermodel.*;
import java.io.*;
public class XWPFExample {
public static void main(String[] args) throws Exception {
// নতুন Word ডক তৈরি
XWPFDocument document = new XWPFDocument();
XWPFParagraph paragraph = document.createParagraph();
XWPFRun run = paragraph.createRun();
run.setText("Hello Apache POI");
// ফাইল সংরক্ষণ করা
FileOutputStream out = new FileOutputStream("document.docx");
document.write(out);
out.close();
}
}
HSLF মডিউলটি PPT ফাইল ফরম্যাট (Microsoft PowerPoint 97-2003) এর জন্য ব্যবহৃত হয়। এটি পুরানো PowerPoint ফাইল ফরম্যাটের জন্য ব্যবহৃত হয়।
XSLF মডিউলটি PPTX ফাইল ফরম্যাট (Microsoft PowerPoint 2007 এবং পরবর্তী সংস্করণ) এর জন্য ব্যবহৃত হয়। এটি XML ভিত্তিক এবং PowerPoint ফাইলের নতুন সংস্করণের জন্য ডিজাইন করা হয়েছে।
import org.apache.poi.xslf.usermodel.*;
import java.io.*;
public class XSLFExample {
public static void main(String[] args) throws Exception {
// একটি নতুন PowerPoint তৈরি
XMLSlideShow ppt = new XMLSlideShow();
// স্লাইড তৈরি করা
XSLFSlide slide = ppt.createSlide();
XSLFTextBox textBox = slide.createTextBox();
XSLFTextParagraph paragraph = textBox.addNewTextParagraph();
XSLFTextRun run = paragraph.addNewTextRun();
run.setText("Hello PowerPoint");
// ফাইল সংরক্ষণ করা
FileOutputStream out = new FileOutputStream("presentation.pptx");
ppt.write(out);
out.close();
}
}
Apache POI এর বিভিন্ন মডিউল, যেমন HSSF, XSSF, HWPF, XWPF, HSLF, এবং XSLF, মাইক্রোসফট অফিস ফাইল ফরম্যাটের সাথে কাজ করার জন্য ডিজাইন করা হয়েছে। এগুলি আপনাকে Excel, Word, এবং PowerPoint ফাইল তৈরি, পড়া এবং সংশোধন করার ক্ষমতা প্রদান করে। HSSF এবং XSSF পুরানো এবং নতুন Excel ফাইল ফরম্যাটের জন্য, HWPF এবং XWPF পুরানো এবং নতুন Word ফাইল ফরম্যাটের জন্য এবং HSLF ও XSLF পুরানো এবং নতুন PowerPoint ফাইল ফরম্যাটের জন্য ব্যবহৃত হয়।
common.read_more