1. Apache POI क्या है और इसकी आवश्यकता क्यों है?
Apache POI (Poor Obfuscation Implementation) एक शक्तिशाली ओपन-सोर्स Java लाइब्रेरी है, जो Microsoft Office फ़ाइलों (Excel, Word, PowerPoint, Outlook) को बनाने, पढ़ने और संशोधित करने के लिए डिज़ाइन की गई है। यह डेवलपर्स को Microsoft Office सॉफ़्टवेयर इंस्टॉल किए बिना प्रोग्रामेटिक रूप से दस्तावेज़ों को मैनेज करने की अनुमति देती है। यह लाइब्रेरी दो मुख्य API प्रदान करती है: HSSF (Horrible Spreadsheet Format) जो .xls (Excel 97-2003) फ़ॉर्मेट के लिए है, और XSSF (XML Spreadsheet Format) जो आधुनिक .xlsx (Excel 2007+) फ़ॉर्मेट के लिए है। Word फ़ाइलों के लिए समान कंपोनेंट्स का उपयोग किया जाता है: HWPF (.doc के लिए) और XWPF (.docx के लिए)।
इसकी आवश्यकता क्यों है? आधुनिक डेवलपमेंट में अक्सर ऑफिस दस्तावेज़ों के साथ काम को ऑटोमेट करने की ज़रूरत होती है: रिपोर्ट जनरेट करना, टेबल से डेटा इम्पोर्ट करना, कॉन्ट्रैक्ट टेम्पलेट बनाना या जटिल एनालिटिकल सारांश तैयार करना। Apache POI इन समस्याओं को हल करता है, Java डेवलपर्स को दस्तावेज़ की संरचना पर पूर्ण नियंत्रण देता है: Excel में सेल फ़ॉर्मेटिंग और चार्ट बनाने से लेकर Word में टेबल, इमेज और स्टाइल के साथ काम करने तक।
यह लाइब्रेरी Apache Software Foundation समुदाय द्वारा सक्रिय रूप से समर्थित है, इसकी व्यापक डॉक्यूमेंटेशन है और इसका उपयोग बड़े कॉर्पोरेट प्रोजेक्ट्स में किया जाता है। यह Java 8 और उससे ऊपर के वर्ज़न के साथ संगत है, जो इसे अधिकांश आधुनिक Java एप्लिकेशनों (वेब सर्विसेज़, डेस्कटॉप एप्लिकेशन और डेटा प्रोसेसिंग सिस्टम) के लिए एक सार्वभौमिक टूल बनाती है।
2. इंस्टॉलेशन
Apache POI Maven Central Repository के माध्यम से वितरित की जाती है। प्रोजेक्ट में इसे जोड़ने के लिए pom.xml (Maven के लिए) या build.gradle (Gradle के लिए) फ़ाइल में डिपेंडेंसी जोड़नी होगी।
Maven
<!-- Excel (.xls और .xlsx) के लिए मुख्य डिपेंडेंसी -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>5.3.0</version>
</dependency>
<!-- Word दस्तावेज़ों (.doc और .docx) के लिए -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
<version>5.3.0</version>
</dependency>
Gradle
implementation 'org.apache.poi:poi-ooxml:5.3.0'
implementation 'org.apache.poi:poi-scratchpad:5.3.0'
महत्वपूर्ण: यह लेख लिखे जाने के समय वर्ज़न 5.3.0 नवीनतम है। Maven Repository पर नवीनतम वर्ज़न जांचने की सलाह दी जाती है। ध्यान दें कि poi-ooxml में पहले से ही poi (बेस मॉड्यूल) और poi-ooxml-lite (OOXML फ़ॉर्मेट के लिए) शामिल हैं।
3. त्वरित शुरुआत: न्यूनतम कार्यशील उदाहरण
चलिए एक सरल Excel फ़ाइल बनाते हैं जिसमें डेटा की एक पंक्ति हो और इसे डिस्क पर सेव करें।
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import java.io.FileOutputStream;
import java.io.IOException;
public class QuickStart {
public static void main(String[] args) {
// .xlsx फ़ॉर्मेट के लिए नई वर्कबुक बनाएं
try (Workbook workbook = new XSSFWorkbook()) {
// "डेटा" नाम से एक शीट बनाएं
Sheet sheet = workbook.createSheet("डेटा");
// पहली पंक्ति (इंडेक्स 0) बनाएं
Row row = sheet.createRow(0);
// कॉलम A (इंडेक्स 0) में सेल बनाएं
Cell cell = row.createCell(0);
cell.setCellValue("Hello, Apache POI!");
// कॉलम B (इंडेक्स 1) में संख्यात्मक मान वाला सेल बनाएं
Cell cell2 = row.createCell(1); पुस्तकालय में भी
SQLDelight Kotlin: पूरी गाइड उदाहरणों के साथ
PHP में ZIP-आर्काइव के साथ कार्य: ZipArchive के लिए पूर्ण गाइड
Elasticsearch C++ क्लाइंट: सर्च इंजन के साथ काम करने के लिए पूर्ण गाइड
जावास्क्रिप्ट (Node.js) के लिए HTTP-क्लाइंट: API के साथ काम करने के लिए शीर्ष लाइब्रेरी