![](https://products-qa.fileformat.com/bn/spreadsheet/java/apache-poi-xssf/header-image.png)
Apache POI-XSSF
Microsoft® Excel XLSX ফাইলের জন্য ওপেন সোর্স Java API
জাভা লাইব্রেরির মাধ্যমে CSV এবং HTML ফাইল ফরম্যাটে Excel XLSX স্প্রেডশীট তৈরি করুন, সম্পাদনা করুন এবং রূপান্তর করুন৷
Apache POI-XSSF কি?
Apache POI-XSSF হল Excel 2007 XLSX ফাইল ফরম্যাটের একটি বিশুদ্ধ জাভা বাস্তবায়ন। API এক্সেল এক্সএলএসএক্স ফাইল তৈরি, পড়া, পরিবর্তন এবং লেখার পদ্ধতি প্রদান করে। এটি বিশেষ চাহিদা সম্পন্নদের জন্য নিম্ন-স্তরের কাঠামো প্রদান করে। এটি দক্ষ পঠন-পাঠনের জন্য একটি ইভেন্ট মডেল API এবং XLSX ফাইলগুলি তৈরি, পড়া এবং সংশোধন করার জন্য একটি সম্পূর্ণ ব্যবহারকারী মডেল API প্রদান করে। Apache POI-XSSF অতিরিক্ত এক্সেল বৈশিষ্ট্যগুলির জন্য দুর্দান্ত সমর্থন প্রদান করে যেমন শীট, সূত্রগুলির সাথে কাজ করা, রঙ এবং সীমানা পূরণ করে সেল শৈলী তৈরি করা, ফন্ট, হেডার এবং ফুটার, আকার, ডেটা যাচাইকরণ, ছবি, হাইপারলিঙ্ক এবং আরও অনেক কিছু।
Apache POI XSSF দিয়ে শুরু করা
প্রথমত, আপনার সিস্টেমে জাভা ডেভেলপমেন্ট কিট (JDK) ইনস্টল করা দরকার। যদি আপনার কাছে এটি ইতিমধ্যেই থাকে তবে একটি সংরক্ষণাগারে সর্বশেষ স্থিতিশীল প্রকাশ পেতে Apache POI এর ডাউনলোড পৃষ্ঠাতে যান৷ যেকোন ডিরেক্টরিতে জিপ ফাইলের বিষয়বস্তু বের করুন যেখান থেকে প্রয়োজনীয় লাইব্রেরিগুলি আপনার জাভা প্রোগ্রামের সাথে লিঙ্ক করা যেতে পারে। যে সব!
আপনার Maven-ভিত্তিক জাভা প্রকল্পে Apache POI উল্লেখ করা আরও সহজ। আপনার যা দরকার তা হল আপনার pom.xml-এ নিম্নলিখিত নির্ভরতা যোগ করুন এবং আপনার IDE-কে Apache POI Jar ফাইলগুলি আনতে এবং উল্লেখ করতে দিন।
Apache POI Maven নির্ভরতা
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>4.1.0</version>
</dependency>
জাভা API ব্যবহার করে বড় এক্সেল স্প্রেডশীট তৈরি করুন
Apache POI XSSF MS Excel ফাইলে বড় ডেটা লেখা পরিচালনার জন্য SXSSF API-এর মাধ্যমে লো-মেমরির ফুটপ্রিন্ট অফার করে। এটি মেমরি ফুরিয়ে না গিয়ে খুব বড় ফাইল লেখার অনুমতি দেয় কারণ সারিগুলির শুধুমাত্র একটি কনফিগারযোগ্য অংশ যেকোন সময়ে মেমরিতে রাখা হয়। POI-SXSSF একটি স্লাইডিং উইন্ডোর মধ্যে থাকা সারিগুলিতে অ্যাক্সেস সীমিত করে তার কম মেমরির পদচিহ্ন অর্জন করে, যখন XSSF নথির সমস্ত সারিতে অ্যাক্সেস দেয়। পুরানো সারিগুলি যা উইন্ডোতে আর নেই সেগুলি ডিস্কে লেখা হওয়ার কারণে অ্যাক্সেসযোগ্য হয়ে ওঠে। আপনি নিম্নলিখিত ধাপগুলি ব্যবহার করে জাভাতে একটি বড় এক্সেল ফাইল তৈরি করতে পারেন
জাভা ব্যবহার করে বড় এক্সেল ফাইল তৈরি করুন
- একটি নতুন SXSSFWorkbook তৈরি করুন এবং মেমরিতে 100টি সারি রাখুন, এর বেশি সারি ডিস্কে ফ্লাশ করা হবে
- createSheet() পদ্ধতি ব্যবহার করে একটি নতুন ওয়ার্কশীট তৈরি করুন
- CreateRow(), createCell() এবং setCellValue("আপনার ডেটা") ভিতরে এবং একটি নেস্টেড লুপ ব্যবহার করে 2000টি সারি এবং 2000টি ঘরে ডেটা সন্নিবেশ করান
- FileOutputStream() ব্যবহার করে ফাইল সংরক্ষণ করুন এবং আউটপুট ফাইলের নাম পাস করুন
- 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();
এক্সেল ওয়ার্কবুক তৈরি এবং পত্রক সংযোজনের জন্য জাভা API
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);
একটি এক্সেল স্প্রেডশীটকে CSV এবং অন্যান্য ফাইল ফরম্যাটে রূপান্তর করুন
জাভা ডেভেলপার এবং প্রোগ্রামাররা Apache POI XSSF API ব্যবহার করে সহজেই একটি এক্সেল স্প্রেডশীটকে একটি CSV ফাইল ফরম্যাটে রূপান্তর করতে পারে। CSV-এর অর্থ হল কমা-বিচ্ছিন্ন-মান এবং এটি অনেকগুলি অ্যাপ্লিকেশনের মধ্যে ডেটা আদান-প্রদানের জন্য ব্যবহৃত একটি খুব সাধারণ বিন্যাস। প্রথমত, ডেভেলপারদের 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-এর প্রথম পৃষ্ঠার শিরোনাম এবং ফুটার, সেইসাথে জোড়/বিজোড় শিরোনাম এবং ফুটারগুলি পরিচালনা করার ক্ষমতা রয়েছে৷ শিরোনাম এবং ফুটারগুলি একটি এক্সেল স্প্রেডশীটের একটি অত্যন্ত গুরুত্বপূর্ণ অংশ। এটিতে সাধারণত অতিরিক্ত তথ্য থাকে যেমন তারিখ, পৃষ্ঠা নম্বর, লেখকের নাম এবং পাদটীকা, যা দীর্ঘ নথিগুলিকে সংগঠিত রাখতে এবং সহজে পড়তে সাহায্য করে। সমস্ত হেডার/ফুটার প্রপার্টি পতাকা XSSF-এ পরিচালনা করা যেতে পারে। বিজোড় হেডার এবং ফুটার হল ডিফল্ট হেডার এবং ফুটার। এটি এমন সমস্ত পৃষ্ঠাগুলিতে প্রদর্শিত হয় যেগুলি প্রথম-পৃষ্ঠার শিরোনাম বা একটি জোড়-পৃষ্ঠা শিরোনাম প্রদর্শন করে না।
এক্সেল এক্সএলএসএক্স ফাইলের ভিতরে সেল এবং টেক্সট এক্সট্রাকশন একত্রিত করা
Apache POI XSSF এমন ক্ষমতা প্রদান করে যা জাভা প্রোগ্রামারদের একটি এক্সেল স্প্রেডশীটের ভিতরে একাধিক সেলকে একক কক্ষে একত্রিত করতে দেয়। এটি এমন পদ্ধতিগুলিকে অন্তর্ভুক্ত করেছে যা কোষের সূচীগুলিকে একটি যুক্তি হিসাবে গ্রহণ করে এবং কোষগুলিকে একটি একক বড় কক্ষে একত্রিত করে। সবচেয়ে চাহিদাপূর্ণ বৈশিষ্ট্যগুলির মধ্যে একটি হল একটি XLSX ফাইল থেকে পাঠ্য বের করার এবং আপনার প্রয়োজন অনুযায়ী এটি ব্যবহার করার ক্ষমতা। Apache POI সমস্ত প্রকল্প সমর্থিত ফাইল বিন্যাসের জন্য মৌলিক পাঠ্য নিষ্কাশন প্রদান করেছে। এক্সএমএল এবং এইচটিএমএল আউটপুট সহ রিচ টেক্সট এক্সট্রাকশন (যেমন ফরম্যাটিং এবং স্টাইলিং) সহ উন্নত পাঠ্য নিষ্কাশনের প্রয়োজনের জন্য, অ্যাপাচি POI সমস্ত প্রকল্প সমর্থিত ফাইল ফর্ম্যাটের জন্য POI-চালিত টিকা পার্সার সরবরাহ করতে অ্যাপাচি টিকার সাথে ঘনিষ্ঠভাবে কাজ করে।