এক্সেল XLS ফাইল পড়ার জন্য ওপেন সোর্স C লাইব্রেরি
একটি হালকা ও দ্রুত ওপেন সোর্স ফ্রি C লাইব্রেরি যা মাইক্রোসফট এক্সেল ছাড়াই এক্সেল XLS ফাইল লোড, পড়া এবং ডেটা বের করার জন্য ব্যবহৃত হয়।
libxls কী?
Microsoft Excel ফাইলের সঙ্গে কাজ করা অনেক সফটওয়্যার অ্যাপ্লিকেশনের একটি সাধারণ চাহিদা। যদিও আধুনিক স্প্রেডশিটগুলো XLSX ফরম্যাট ব্যবহার করে, তবুও অসংখ্য প্রতিষ্ঠান এখনও লিগেসি XLS ফাইলের উপর নির্ভরশীল। এই ফাইলগুলো থেকে ডেটা পড়া এবং বের করা চ্যালেঞ্জিং হতে পারে কারণ বাইনারি XLS ফরম্যাটটি মালিকানাধীন এবং জটিল। libxls হল একটি ওপেন সোর্স C লাইব্রেরি যা বিশেষভাবে এই কাজটি সহজ করার জন্য ডিজাইন করা হয়েছে। এটি Microsoft Excel বা কোনো বাহ্যিক Office কম্পোনেন্টের প্রয়োজন ছাড়াই Excel 97–2003 XLS ফাইলগুলো দ্রুত এবং হালকা ভাবে পড়ার সমাধান প্রদান করে।
libxls একটি পোর্টেবল C লাইব্রেরি যা ডেভেলপারদেরকে মাইক্রোসফট এক্সেল XLS স্প্রেডশিট থেকে তথ্য পড়া এবং বের করতে সক্ষম করে। এটি Excel 97–2003 (.xls) ফাইল, একাধিক ওয়ার্কশিট, সেল মান এবং ফরম্যাটিং তথ্য, ইউনিকোড টেক্সট, তারিখ এবং সংখ্যা এক্সট্রাকশন, ক্রস-প্ল্যাটফর্ম ডেভেলপমেন্ট এবং আরও অনেক কিছু সমর্থন করে। অফিস অটোমেশন পদ্ধতির বিপরীতে, libxls মাইক্রোসফট অফিসের থেকে স্বাধীনভাবে কাজ করে, যা লিনাক্স, macOS, উইন্ডোজ এবং এমবেডেড পরিবেশের জন্য উপযুক্ত করে তোলে। এর সরলতা, পোর্টেবিলিটি এবং পারফরম্যান্সের কারণে, libxls ডেটা মাইগ্রেশন টুল, স্প্রেডশিট কনভার্টার, রিপোর্টিং অ্যাপ্লিকেশন এবং ক্রস-প্ল্যাটফর্ম সফটওয়্যার প্রকল্পে ব্যাপকভাবে ব্যবহৃত হয়।
libxls দিয়ে শুরু করা
লাইব্রেরি তৈরি এবং ইনস্টল করার জন্য libxls CMake সমর্থন করে। দয়া করে নিম্নলিখিত কমান্ডটি ব্যবহার করুন।
CRAN এর মাধ্যমে libxls ইনস্টল করুন
mkdir build
cd build
cmake ..
make
GitHub থেকে libxls সোর্স কোড রেপোজিটরি ক্লোন করুন। দয়া করে নিম্নলিখিত কোডটি ব্যবহার করুন।
GitHub এর মাধ্যমে libxls ইনস্টল করুন
git clone https://github.com/libxls/libxls.git
# Or use your preferred protocol instead of https C লাইব্রেরি ব্যবহার করে লিগেসি এক্সেল XLS ফাইল পড়া
libxls এর অন্যতম বড় শক্তি হল এটি Excel 97–2003 বাইনারি XLS ফাইল পার্স করার ক্ষমতা। লাইব্রেরিটি এই স্প্রেডশিটগুলোর অভ্যন্তরীণ গঠনকে বুঝে এবং অ্যাপ্লিকেশনগুলোকে Microsoft Excel ছাড়াই সারি, কলাম এবং সেল মানে প্রবেশের সুযোগ দেয়। এই সক্ষমতা বিশেষত সেই সংস্থাগুলোর জন্য উপকারী যারা এখনও ঐতিহাসিক ডেটা XLS ফরম্যাটে সংরক্ষণ করে। ডেভেলপাররা সহজেই ইম্পোর্ট টুল তৈরি করতে পারে এবং ডেটা এক্সট্র্যাকশন প্রক্রিয়া স্বয়ংক্রিয় করতে পারে, পুরনো ডকুমেন্টের সাথে সামঞ্জস্য বজায় রেখে। নিম্নলিখিত উদাহরণটি UTF-8 এনকোডিং ব্যবহার করে একটি Excel XLS ওয়ার্কবুক খুলে। ওয়ার্কবুক লোড হওয়ার পর, ডেভেলপাররা ওয়ার্কশিটে প্রবেশ করতে এবং স্প্রেডশিটের ডেটা বের করতে পারে।
C লাইব্রেরি ব্যবহার করে Excel XLS ফাইল কীভাবে পড়বেন
#include
int main()
{
xlsWorkBook *workbook;
workbook = xls_open("sample.xls", "UTF-8");
if(workbook)
{
printf("Workbook opened successfully\n");
xls_close_WB(workbook);
}
return 0;
}
C লাইব্রেরি ব্যবহার করে একাধিক ওয়ার্কশীট অ্যাক্সেস করা
অনেক Excel ফাইলে একাধিক ওয়ার্কশিট থাকে যা তথ্যকে বিভিন্ন বিভাগে সংগঠিত করে। libxls প্রতিটি ওয়ার্কশিট স্বতন্ত্রভাবে নেভিগেট এবং পড়ার জন্য API প্রদান করে। এই ফিচারটি আর্থিক রিপোর্ট, ইনভয়েস, ইনভেন্টরি শিট বা বৈজ্ঞানিক ডেটাসেট প্রক্রিয়াকরণের সময় উপকারী। ডেভেলপাররা সব শিটের মাধ্যমে লুপ করে স্বয়ংক্রিয়ভাবে তথ্য বের করতে পারে, ব্যবহারকারীর হস্তক্ষেপ ছাড়াই। নিম্নলিখিত কোডটি একটি ওয়ার্কবুক খুলে এবং ফাইলে উপলব্ধ মোট ওয়ার্কশিটের সংখ্যা পুনরুদ্ধার করে।
C ব্যবহার করে XLS ফাইলে মোট ওয়ার্কশীটের সংখ্যা কীভাবে পাওয়া যাবে?
#include
int main()
{
xlsWorkBook *wb = xls_open("report.xls", "UTF-8");
if(wb)
{
printf("Number of sheets: %d\n", wb->sheets.count);
xls_close_WB(wb);
}
return 0;
}
C লাইব্রেরি ব্যবহার করে সেল মান পড়া
ওপেন সোর্স libxls অ্যাপ্লিকেশনগুলোকে পৃথক সেলগুলোতে প্রবেশ এবং তাদের বিষয়বস্তু পুনরুদ্ধার করতে সক্ষম করে। স্প্রেডশিটে টেক্সট, সংখ্যা বা তারিখ যাই থাকুক না কেন, লাইব্রেরি সেল তথ্যের সরল প্রবেশাধিকার প্রদান করে। এই সক্ষমতা libxls-কে স্প্রেডশিট ডেটা ডাটাবেসে ইম্পোর্ট করা, রিপোর্ট তৈরি করা, অথবা এক্সেল ডকুমেন্টকে CSV এবং JSON ফরম্যাটে রূপান্তর করার জন্য উপযুক্ত করে তোলে। নিম্নলিখিত কোড উদাহরণটি ওয়ার্কশিটের প্রথম সেলটি পড়ে এবং তার মান কনসোলে প্রিন্ট করে।
C লাইব্রেরি ব্যবহার করে ওয়ার্কশীট সেলগুলো কীভাবে অ্যাক্সেস করবেন এবং তাদের মান কীভাবে প্রিন্ট করবেন?
#include
int main()
{
xlsWorkBook *wb = xls_open("sample.xls", "UTF-8");
if(wb)
{
xlsWorkSheet *sheet = xls_getWorkSheet(wb, 0);
xls_parseWorkSheet(sheet);
xlsCell *cell = xls_cell(sheet, 0, 0);
if(cell)
printf("Cell value: %s\n", cell->str);
xls_close_WS(sheet);
xls_close_WB(wb);
}
return 0;
}
ইউনিকোড এবং ক্যারেক্টার এনকোডিং সমর্থন
আধুনিক অ্যাপ্লিকেশনগুলো প্রায়ই বহুভাষিক স্প্রেডশিটের সাথে কাজ করে। libxls কনফিগারযোগ্য ক্যারেক্টার এনকোডিংয়ের মাধ্যমে ইউনিকোড টেক্সটকে সমর্থন করে, যা আন্তর্জাতিক ভাষা এবং বিশেষ অক্ষরযুক্ত ফাইল প্রক্রিয়া করা সম্ভব করে। এই বৈশিষ্ট্যটি বিশেষভাবে ব্যবসায়িক অ্যাপ্লিকেশনগুলোর জন্য উপকারী, যা গ্রাহকের নাম, ঠিকানা এবং বিভিন্ন ভাষায় রিপোর্ট পরিচালনা করে। UTF-8 এনকোডিং নির্দিষ্ট করে, লাইব্রেরি এক্সেল ফাইলের ভিতরে সংরক্ষিত ইউনিকোড টেক্সটকে সঠিকভাবে ব্যাখ্যা করে, যেমনটি নিম্নলিখিত কোড উদাহরণে দেখানো হয়েছে।
C ব্যবহার করে Excel ফাইলের মধ্যে সংরক্ষিত ইউনিকোড টেক্সট কীভাবে ব্যাখ্যা করবেন?
xlsWorkBook *wb = xls_open("employees.xls", "UTF-8");
if(wb)
{
printf("Workbook loaded using UTF-8 encoding\n");
}