1

我有以下数组,稍后我用它在 Excel 文件上写入标题。

fields = ["fileName", "type", "id"]

然后我有以下代码从 XML 中读取值:

filename = xml.xpath('//path/filename').text
type = xml.xpath('//path/type').text
id = xml.xpath('//path/id').text

我迭代初始数组(字段)以将 Excel 单元格设置为上一步中提取的值:

row = 2
c = 1
fields.each do |content|
  ws.Cells(row,c).Value = content
  c = c + 1

我试图将数组的 ( fields) 内容变为变量名而不是字符串,以便能够重用头字段。

任何人都可以推荐一种使其成为可能的方法吗?

4

1 回答 1

3

这听起来像您需要使用Hash将字段名称与您提取的值相关联:

fields = {
  "fileName" => xml.xpath('//path/filename').text,
  "type" => xml.xpath('//path/type').text,
  "id" => xml.xpath('//path/id').text
}

row=2
c=1
fields.each do |key,value|
  ws.Cells(row,c).Value = value
  c=c+1
end
于 2012-05-15T16:24:44.470 回答