我正在编写一个接收 json 文件(来自 Flurry API)并为“状态板”应用程序创建另一个 json 友好格式的 Ruby 代码。使用此 json 片段时:
"country":[{"@country":"US","day":[{"@date":"2013-09-20","@value":"1"},
{"@date":"2013-09- 23","@value":"1"}]},
{"@country":"KR","day":{"@date":"2013-09-20","@value":"1"}}
一切正常,但是当代码读取“KR”然后是“day”(注意缺少“[]”)时,我收到以下错误:
- `[]': 无法将字符串转换为整数 (TypeError)
我用来读取原始 json 文件的代码是:
countries = response.parsed_response["country"]
countries.each do |datapoint|
countryName = datapoint["@country"]
days = datapoint["day"]
data = []
days.each do |datapoint2|
value = datapoint2["@value"]
date = Date.parse(datapoint2["@date"])
dateString = date.strftime(dateFormat)
data << { :title => dateString, :value => value }
end
dataSequences << { :title => countryName, :color => metric[:color], :datapoints => data
}
end
我是 Ruby 中的菜鸟,所以...可以在读取 json 文件时添加括号以避免此错误?