#ruby-on-rails #rubyxl
#ruby-on-rails #rubyxl
Вопрос:
Я пытаюсь прочитать книгу с помощью RubyXL, но всегда возвращаю мне шестнадцатеричный код, например: #<RubyXL::Cell:0x007f8b597c4390>
workbook = RubyXL::Parser.parse("issues.xlsx")
worksheet = workbook[0]
worksheet.extract_data # Produces a simple rectangular array that consists only of cell values (rather than the Cell objects)
worksheet = workbook[0]
#worksheet.sheet_data[0][0] # Returns cell A1 in the worksheet
logger.info worksheet[17][4]
Необходимо ли возвращать текст строки в ячейке?
Ответ №1:
То, что вы делаете, — это получение фактической ячейки, а не ее значения. Чтобы получить значение ячейки, выполните следующие действия:
logger.info worksheet[17][4].value
Ячейка может понадобиться для получения другой информации, такой как стиль ячейки:
logger.info worksheet[17][4].font_name
logger.info worksheet[17][4].font_color
logger.info worksheet[17][4].font_size
logger.info worksheet[17][4].border_top
logger.info worksheet[17][4].is_bolded
logger.info worksheet[17][4].is_italicized
logger.info worksheet[17][4].is_struckthrough
logger.info worksheet[17][4].is_underlined
Ответ №2:
Добавьте to_a в конце, и это решит вашу проблему.