Введение
Чтение файлов XLS в Ruby — распространенная задача при работе с данными электронных таблиц. В этой статье мы рассмотрим несколько способов добиться этого, а также приведем примеры кода.
Метод 1: Ру Джем
Roo — популярный в сообществе Ruby инструмент для работы с файлами электронных таблиц. Он поддерживает различные форматы, включая XLS. Чтобы использовать Roo, вам необходимо установить драгоценный камень, выполнив следующую команду:
gem install roo
После установки вы можете прочитать файл XLS с помощью драгоценного камня Roo, как показано ниже:
require 'roo'
xls = Roo::Excel.new("path/to/file.xls")
xls.default_sheet = xls.sheets.first
xls.each_row_streaming do |row|
# Access row data using row[column_number]
puts row[0].value
puts row[1].value
end
Метод 2. Электронная таблица
Еще один популярный драгоценный камень для работы с файлами электронных таблиц в Ruby — это драгоценный камень Spreadsheet. Он предоставляет простой API для чтения и записи файлов XLS. Чтобы использовать драгоценный камень электронной таблицы, установите его, выполнив следующую команду:
gem install spreadsheet
После установки вы можете читать файл XLS с помощью драгоценного камня электронной таблицы, как показано ниже:
require 'spreadsheet'
xls = Spreadsheet.open("path/to/file.xls")
sheet = xls.worksheet(0)
sheet.each do |row|
# Access row data using row[column_number]
puts row[0]
puts row[1]
end
Метод 3: Axlsx Gem
Гем Axlsx в основном используется для создания файлов электронных таблиц и управления ими, но он также поддерживает чтение файлов XLS. Чтобы использовать Axlsx, установите драгоценный камень, выполнив следующую команду:
gem install axlsx
После установки вы можете читать файл XLS с помощью драгоценного камня Axlsx, как показано ниже:
require 'axlsx'
xlsx = Axlsx::Package.open("path/to/file.xls")
sheet = xlsx.workbook.worksheets[0]
sheet.each_row do |row|
# Access row data using row.cells[column_number].value
puts row.cells[0].value
puts row.cells[1].value
end
Метод 4: RubyXL Gem
RubyXL — еще один популярный инструмент для чтения и записи файлов XLS в Ruby. Чтобы использовать RubyXL, установите драгоценный камень, выполнив следующую команду:
gem install rubyXL
После установки вы можете прочитать файл XLS с помощью драгоценного камня RubyXL, как показано ниже:
require 'rubyXL'
workbook = RubyXL::Parser.parse("path/to/file.xls")
worksheet = workbook[0]
worksheet.each do |row|
# Access row data using row.cells[column_number].value
puts row.cells[0].value
puts row.cells[1].value
end
Заключение
В этой статье мы рассмотрели несколько методов чтения файлов XLS в Ruby. Мы рассмотрели драгоценные камни Roo, Spreadsheet, Axlsx и RubyXL, каждый из которых предлагает разные подходы для выполнения задачи. В зависимости от ваших требований и предпочтений вы можете выбрать драгоценный камень, который наилучшим образом соответствует вашим потребностям. Приятного кодирования!