Apache POI-XSSF 

 
 

Microsoft® Excel XLSX फ़ाइलों के लिए ओपन सोर्स जावा एपीआई

जावा लाइब्रेरी के माध्यम से एक्सेल एक्सएलएसएक्स स्प्रेडशीट को सीएसवी और एचटीएमएल फ़ाइल स्वरूपों में बनाएं, संपादित करें और कनवर्ट करें।

अपाचे पीओआई-एक्सएसएसएफ क्या है?

Apache POI-XSSF Excel 2007 XLSX फ़ाइल स्वरूप का शुद्ध जावा कार्यान्वयन है। एपीआई एक्सेल एक्सएलएसएक्स फाइलों को बनाने, पढ़ने, संशोधित करने और लिखने के लिए प्रक्रियाएं प्रदान करता है। यह विशेष जरूरतों वाले लोगों के लिए निम्न-स्तरीय संरचनाएं प्रदान करता है। यह एक्सएलएसएक्स फाइलों को बनाने, पढ़ने और संशोधित करने के लिए कुशल रीड-ओनली एक्सेस के साथ-साथ एक पूर्ण उपयोगकर्ता मॉडल एपीआई के लिए एक इवेंट मॉडल एपीआई भी प्रदान करता है। Apache POI-XSSF अतिरिक्त एक्सेल सुविधाओं के लिए बहुत अच्छा समर्थन प्रदान करता है जैसे कि शीट, फ़ार्मुलों के साथ काम करना, रंग और बॉर्डर, फोंट, हेडर और फ़ुटर, आकार, डेटा सत्यापन, चित्र, हाइपरलिंक, और बहुत कुछ भरकर सेल स्टाइल बनाना।

Previous Next

Apache POI XSSF के साथ शुरुआत करना

सबसे पहले, आपको अपने सिस्टम पर जावा डेवलपमेंट किट (JDK) स्थापित करना होगा। यदि आपके पास यह पहले से है तो किसी संग्रह में नवीनतम स्थिर रिलीज़ प्राप्त करने के लिए Apache POI के डाउनलोड पृष्ठ पर जाएं। ज़िप फ़ाइल की सामग्री को किसी भी निर्देशिका में निकालें जहाँ से आवश्यक पुस्तकालयों को आपके जावा प्रोग्राम से जोड़ा जा सकता है। बस इतना ही!

अपने मावेन-आधारित जावा प्रोजेक्ट में अपाचे पीओआई को संदर्भित करना और भी आसान है। आपको बस अपने pom.xml में निम्नलिखित निर्भरता को जोड़ना है और अपने IDE को Apache POI Jar फ़ाइलों को लाने और संदर्भित करने देना है।

अपाचे पीओआई मावेन निर्भरता

<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml</artifactId>
    <version>4.1.0</version>
</dependency>

जावा एपीआई का उपयोग करके बड़ी एक्सेल स्प्रेडशीट बनाएं

अपाचे पीओआई एक्सएसएसएफ एमएस एक्सेल फाइलों में बड़े डेटा लेखन को संभालने के लिए एसएक्सएसएसएफ एपीआई के माध्यम से कम-मेमोरी पदचिह्न प्रदान करता है। यह स्मृति से बाहर निकले बिना बहुत बड़ी फ़ाइलों को लिखने की अनुमति देता है क्योंकि पंक्तियों का केवल एक विन्यास योग्य भाग किसी एक समय में स्मृति में रखा जाता है। POI-SXSSF स्लाइडिंग विंडो के भीतर की पंक्तियों तक पहुंच सीमित करके अपने कम मेमोरी फ़ुटप्रिंट को प्राप्त करता है, जबकि XSSF दस्तावेज़ में सभी पंक्तियों तक पहुँच प्रदान करता है। पुरानी पंक्तियाँ जो अब विंडो में नहीं हैं, दुर्गम हो जाती हैं, क्योंकि वे डिस्क पर लिखी जाती हैं। आप निम्न चरणों का उपयोग करके जावा में एक बड़ी एक्सेल फ़ाइल बना सकते हैं:

जावा का उपयोग करके बड़ी एक्सेल फाइल बनाएं

  1. एक नई SXSSFWorkbook बनाएं और 100 पंक्तियों को मेमोरी में रखें, अधिक पंक्तियों को डिस्क पर फ़्लश किया जाएगा
  2. createSheet() विधि का उपयोग करके एक नई वर्कशीट बनाएं
  3. createRow(), createCell() और setCellValue("Your data") अंदर और एक नेस्टेड लूप का उपयोग करके 2000 पंक्तियों और 2000 सेल में डेटा डालें
  4. FileOutputStream() का उपयोग करके फ़ाइल सहेजें और आउटपुट फ़ाइल नाम पास करें
  5. SXSSFWorkbook.Write() विधि का उपयोग करके फ़ाइल में लिखें और FileOutputStream को एक पैरामीटर के रूप में पास करें

एक बड़ी एक्सेल फाइल बनाएं

// create a new SXSSFWorkbook
SXSSFWorkbook wb = new SXSSFWorkbook(100);
Sheet sh = wb.createSheet();
// insert 2000 rows
for(int rownum = 0; rownum < 2000; rownum++){
    Row row = sh.createRow(rownum);
    // insert data in 20000 cells
    for(int cellnum = 0; cellnum < 10; cellnum++){
    Cell cell = row.createCell(cellnum);
    cell.setCellValue("Row Number: "+ rownum + " Cell Number: "+ cellnum);
    }
}
// save file
FileOutputStream out = new FileOutputStream("LargeDcument.xlsx");
wb.write(out);
out.close();

एक्सेल वर्कबुक क्रिएशन एंड शीट्स एडिशन के लिए जावा एपीआई

Apache POI XSSF कंप्यूटर प्रोग्रामर्स को XLSX फाइल फॉर्मेट में एक नई एक्सेल वर्कबुक बनाने में सक्षम बनाता है। एक बार जब डेवलपर कार्यपुस्तिका बना लेते हैं, तो कार्यपुस्तिका के मौजूदा इंस्टेंस से कार्यपत्रक बनाए जाते हैं, और नई बनाई गई शीट स्वचालित रूप से कार्यपुस्तिका के क्रम में जुड़ जाती है।

एक्सेल वर्कबुक बनाएं और शीट्स जोड़ें

// create a new XLSX file
Workbook workbook = new XSSFWorkbook();
OutputStream outputStream = new FileOutputStream("CreateXlsx.xlsx");
// create a new sheet
Sheet sheet = workbook.createSheet("Apache POI XSSF");
// create a new sheet
Row row   = sheet.createRow(1);
// create a new cell
Cell cell  = row.createCell(1);
// set cell value
cell.setCellValue("File Format Developer Guide");
// save file
workbook.write(outputStream);

एक्सेल स्प्रेडशीट को सीएसवी और अन्य फाइल फॉर्मेट में बदलें

जावा डेवलपर्स और प्रोग्रामर अपाचे पीओआई एक्सएसएसएफ एपीआई का उपयोग करके एक्सेल स्प्रेडशीट को आसानी से सीएसवी फ़ाइल प्रारूप में परिवर्तित कर सकते हैं। सीएसवी कॉमा-सेपरेटेड-वैल्यू के लिए खड़ा है और कई अनुप्रयोगों के बीच डेटा के आदान-प्रदान के लिए उपयोग किया जाने वाला एक बहुत ही सामान्य प्रारूप है। सबसे पहले, डेवलपर्स को Apache POI XSSF API का उपयोग करके इनपुट XLS फ़ाइल को पढ़ना होगा और फिर निकाली गई जानकारी को CSV फ़ाइलों में लिखना होगा।

XLSX को CSV में बदलें

// Open and existing XLSX file
FileInputStream fileInStream = new FileInputStream("LargeDocument.xlsx");
XSSFWorkbook workBook = new XSSFWorkbook(fileInStream);
XSSFSheet selSheet = workBook.getSheetAt(0);
// Loop through all the rows
Iterator rowIterator = selSheet.iterator();
while (rowIterator.hasNext()) {
    Row row = rowIterator.next();
    // Loop through all rows and add ","
    Iterator cellIterator = row.cellIterator();
    StringBuffer stringBuffer = new StringBuffer();
    while (cellIterator.hasNext()) {
    Cell cell = cellIterator.next();
    if (stringBuffer.length() != 0) {
        stringBuffer.append(",");
    }
    stringBuffer.append(cell.getStringCellValue());
    }
    System.out.println(stringBuffer.toString());
}
workBook.close();

हेडर और फुटर के लिए XSSF एन्हांसमेंट

Apache POI XSSF में प्रथम पृष्ठ शीर्षलेख और पादलेख, साथ ही सम/विषम शीर्षलेख और पादलेख को संभालने की क्षमता है। शीर्ष लेख और पाद लेख एक्सेल स्प्रेडशीट का एक बहुत ही महत्वपूर्ण हिस्सा हैं। इसमें आमतौर पर अतिरिक्त जानकारी होती है जैसे दिनांक, पृष्ठ संख्या, लेखक का नाम और फुटनोट, जो लंबे दस्तावेज़ों को व्यवस्थित और पढ़ने में आसान रखने में मदद करते हैं। सभी शीर्षलेख/पाद लेख संपत्ति झंडे एक्सएसएसएफ में नियंत्रित किए जा सकते हैं। विषम शीर्षलेख और पाद लेख डिफ़ॉल्ट शीर्षलेख और पाद लेख हैं। यह उन सभी पृष्ठों पर प्रदर्शित होता है जो या तो प्रथम-पृष्ठ शीर्षलेख या सम-पृष्ठ शीर्षलेख प्रदर्शित नहीं करते हैं।

एक्सेल एक्सएलएसएक्स फाइलों के अंदर सेल और टेक्स्ट एक्सट्रैक्शन मर्ज करना

Apache POI XSSF वह क्षमता प्रदान करता है जो जावा प्रोग्रामर को एक्सेल स्प्रेडशीट के अंदर एक ही सेल में कई सेल को मर्ज करने की अनुमति देता है। इसमें ऐसे तरीके शामिल हैं जो सेल इंडेक्स को एक तर्क के रूप में लेते हैं और कोशिकाओं को एक बड़े सेल में मर्ज करते हैं। सबसे अधिक मांग वाली विशेषताओं में से एक XLSX फ़ाइल से टेक्स्ट निकालने और अपनी आवश्यकताओं के अनुसार इसका उपयोग करने की क्षमता है। Apache POI ने सभी परियोजना समर्थित फ़ाइल स्वरूपों के लिए मूल पाठ निष्कर्षण प्रदान किया है। रिच टेक्स्ट निष्कर्षण (जैसे स्वरूपण और स्टाइलिंग) सहित उन्नत पाठ निष्कर्षण आवश्यकताओं के लिए, एक्सएमएल और एचटीएमएल आउटपुट के साथ, अपाचे पीओआई सभी परियोजना समर्थित फ़ाइल स्वरूपों के लिए पीओआई-संचालित टीका पार्सर्स वितरित करने के लिए अपाचे टीका के साथ मिलकर काम करता है।

 हिन्दी