کتابخانه رایگان Ruby برای تجزیه فایل بزرگ Excel XLSX بهصورت راه دور
یک کتابخانه قدرتمند منبع باز Ruby برای تجزیه فایلهای بزرگ Excel XLSX و XLSM بهصورت راه دور. از تجزیه فایلها و تصاویر از راه دور، نگاشت سرصفحهها، و موارد دیگر پشتیبانی میکند.
کتابخانه Creek چیست؟
در دنیای پردازش دادهها، کار با فایلهای بزرگ Excel میتواند کاری دشوار باشد و اغلب منجر به گلوگاههای عملکردی و مصرف بالای حافظه میشود. با Creek، کتابخانه قدرتمند منبع باز Ruby که برای تجزیه فایلهای بزرگ Excel با کارایی فوقالعاده طراحی شده است، مشکلات اینچنینی حل میشود. این ابزار کارآمد برای تجزیه فایلهای بزرگ Excel است. ویژگیهای کلیدی آن شامل تجزیه بهصورت جریان، پشتیبانی از انواع مختلف فایل و گزینههای استفاده انعطافپذیر در اسکریپتهای مستقل و برنامههای Rails است. این کتابخانه پشتیبانی کامل از عملیات پایه، تجزیه تصویر و پردازش فایلهای دوردست را فراهم میکند و به توسعهدهندگانی که به دنبال بهینهسازی جریان کاری پردازش داده خود هستند، منبع ارزشمندی میباشد.
Creek یک کتابخانه منبع باز، مقاوم، کارآمد و متمرکز برای تجزیه فایلهای Excel .xlsx/.xlsm در Ruby است. این یک gem Ruby است که روش سریع و سادهای برای خواندن و تجزیه فایلهای بزرگ Excel (XLSX و XLSM) ارائه میدهد. از تجزیه بهصورت جریان استفاده میکند، به این معنی که فایل را قطعهقطعه میخواند و تمام فایل را بهصورت همزمان در حافظه بارگذاری نمیکند. این رویکرد Creek را بهطور فوقالعادهای حافظهکارآمد میسازد و برای برنامههایی که با مجموعهدادههای عظیم سروکار دارند، ایدهآل است. چه در یک اسکریپت Ruby مستقل کار میکنید و چه در یک برنامه Rails، Creek تجربه ادغام بدون درز را فراهم میکند. اگر پروژهتان شامل صفحات گسترده بزرگ، تصاویر، متادیتا یا بارگذاری فایلهای Rails باشد، Creek عملکردهای لازم را با هزینه کم حافظه فراهم میکند.
شروع کار با Creek
پیشنهاد ما برای نصب کتابخانه Creek استفاده از RubyGems است. لطفاً برای نصب روان، فرمان زیر را اجرا کنید.
نصب Creek از طریق RubyGems
$ gem install fast_excel تجزیه فایلهای بزرگ Excel با Ruby
نقطهی عطف کتابخانه منبع باز Fast_Excel این است که به برنامهنویسان نرمافزاری امکان میدهد بهطور بسیار کارآمد و با مصرف کم حافظه، فایلهای جدید Excel XLSX را درون برنامههای Ruby خود ایجاد کنند. استفاده اصلی این کتابخانه، تولید یک صفحهگسترده ساده از یک آرایه دادههاست. این کتابخانه از افزودن ورقهای کاری جدید، تغییر نام ورقهای موجود، وارد کردن متن و تصویر و غیره پشتیبانی میکند. در اینجا یک مثال ساده نشان میدهد که چگونه میتوانید یک صفحهگسترده ساده XLSX را درون برنامههای Ruby ایجاد کنید.
چگونه فایلهای بزرگ XLSX را با استفاده از کتابخانه Ruby تجزیه کنیم؟
require 'fast_excel'
# Create a new workbook
workbook = FastExcel.open("constant_memory.xlsx", constant_memory: true)
# Add a worksheet
worksheet = workbook.add_worksheet("User Report")
# Add data rows. The write_row method accepts an array of values.
worksheet.write_row(0, ["ID", "Name", "Email"]) # Header row (row index 0)
users = User.limit(10000)
users.each_with_index do |user, index|
# Write each row, starting from row 1
worksheet.write_row(index + 1, [user.id, user.name, user.email])
end
# Don't forget to close the workbook to save the file!
workbook.close
تجزیه تصویر و استخراج با کتابخانه Ruby
کتابخانه Fast_Excel پشتیبانی کامل از مجموعهای غنی از گزینههای قالببندی را فراهم میکند تا صفحهگستردههای شما حرفهای و قابل خواندن باشند. میتوانید اندازه فونت، خانواده فونت، رنگ (از جمله RGB)، سبکهای پررنگ/کج، انواع زیر خط، خط خورده، بستهبندی متن، چرخش، تورفتگی، حاشیهها (نازک، دوگانه و غیره)، ترازبندی (افقی، عمودی)، فرمتهای عددی و غیره را تعریف کنید. این مثال بسیار مفید نشان میدهد که چگونه توسعهدهندگان میتوانند انواع مختلفی از قالببندیها را روی سلولها، ردیفها و ستونهای ورقهای کاری Excel درون برنامههای ruby اعمال کنند.
چگونه تصاویر را از یک ورقکار Excel با استفاده از کتابخانه Ruby استخراج کنیم؟
require 'fast_excel'
workbook = Fast_Excel.open("formatted_report.xlsx")
# Create a bold format
bold = workbook.bold_format
# Create a custom number format
currency_format = workbook.number_format("$#,##0.00")
worksheet = workbook.add_worksheet("Sales Report")
# Set column widths and formats
worksheet.set_column(0, 0, 20)
worksheet.set_column(1, 1, 15, currency_format)
# Write a header row with bold formatting
worksheet.append_row(["Product", "Revenue"], bold)
# Write data rows
worksheet.append_row(["Product A", 15000])
worksheet.append_row(["Product B", 25000])
workbook.close
تجزیه فایل از راه دور با کتابخانه Ruby
کتابخانه Fast_Excel به توسعهدهندگان نرمافزار اجازه میدهد با ردیفها و ستونهای یک صفحهگسترده Excel درون برنامههای Ruby کار کنند. این کتابخانه کنترل کامل بر ابعاد ستونها و ردیفهای شما فراهم میکند. میتوانید عرضها و ارتفاعهای مشخصی را تنظیم کنید و Fast_Excel حتی از عرض خودکار برای مقادیر رشتهای پشتیبانی میکند. مثال زیر نشان میدهد که چگونه میتوانید با استفاده از دستورات Ruby، روی ردیفها و ستونهای یک صفحهگسترده Excel کار کنید.
چگونه فایل XLSX را بهصورت دوردست با استفاده از کتابخانه Ruby تجزیه کنیم؟
require 'fast_excel'
workbook = Fast_Excel.open("column_width.xlsx")
worksheet = workbook.add_worksheet
# Set the width of the first column to 30
worksheet.set_column(0, 0, 30)
# Set the height of the first row to 40
worksheet.set_row(0, 40)
worksheet.append_row(["This is a long string that needs more space"])
workbook.close
تجزیه فایلهای XLSX و XLSM با Ruby
کتابخانه منبع باز Fast_Excel سرعت بسیار بالایی دارد و بهطور قابلتوجهی از جواهرات pure-Ruby پیشی میگیرد، بهویژه با مجموعهدادههای بزرگ. چون FastExcel از libxlsxwriter (کتابخانه C) استفاده میکند، عملیاتها بسیار سریعتر از کتابخانههای pure Ruby هستند. معیارهای بنچمارک نشان میدهند که این کتابخانه از دیگران مانند Axlsx چندین برابر بهتر عمل میکند. نوشتن ۱٬۰۰۰ ردیف – Fast_Excel تقریباً ۳ تا ۴ برابر سریعتر از Axlsx است؛ برای دادههای بزرگ (۲۰٬۰۰۰ ردیف) همچنان بهطور قابلتوجهی سریعتر است.