ruby-on-rails 如何使用RubyXL获取迭代中的行号?

3mpgtkmj  于 2023-07-01  发布在  Ruby
关注(0)|答案(3)|浏览(123)

使用RubyXL,我想知道我的迭代的行号是多少。

workbook = RubyXL::Parser.parse("./file.xlsx")

    worksheet = workbook[0]

    worksheet.each do |row|
    test0 = row[0].value
    line = ????
    puts "Line number #{line} - Value = #{test0}"
    end
ibps3vxo

ibps3vxo1#

你可以使用#each_with_index,并这样写:

workbook = RubyXL::Parser.parse("./file.xlsx")

workbook.first.each_with_index do |row, index|
  puts "Line number #{index} - Value = #{row[0].value}"
end
jexiocij

jexiocij2#

可以在循环时使用each_with_index方法获取迭代的当前行号

worksheet.each_with_index do |row, index|
    test0 = row[0].value
    line = index
    puts "Line number #{line} - Value = #{test0}"
end
z9ju0rcb

z9ju0rcb3#

调用row.r获取当前行号。

不知道是什么时候添加的,但现在可以执行以下操作:

worksheet.each do |row|
  puts "Row Number #{ row.r }"
end

请记住,第一个行号是1,并且 * 通常 * 是列标题/名称。

相关问题