我是Ruby新手,並且有問題。我正在嘗試創建一個將JSON轉換爲CSV的.rb文件。通過FasterCSV將JSON轉換爲CSV
我跨了一些不同來源來到我做:
require "rubygems"
require 'fastercsv'
require 'json'
csv_string = FasterCSV.generate({}) do |csv|
JSON.parse(File.open("small.json").read).each do |hash|
csv << hash
end
end
puts csv_string
現在,它實際上是輸出文本,但他們都擠成一團沒有空格,逗號等我如何使它更加個性化,爲CSV文件清除,以便我可以導出該文件?
的JSON看起來像:
{
"results": [
{
"reportingId": "s",
"listingType": "Business",
"hasExposureProducts": false,
"name": "Medeco Medical Centre World Square",
"primaryAddress": {
"geoCodeGranularity": "PROPERTY",
"addressLine": "Shop 9.01 World Sq Shopng Cntr 644 George St",
"longitude": "151.206172",
"suburb": "Sydney",
"state": "NSW",
"postcode": "2000",
"latitude": "-33.876416",
"type": "VANITY"
},
"primaryContacts": [
{
"type": "PHONE",
"value": "(02) 9264 8500"
}
]
},xxx
}
的CSV只是有類似:
reportingId, s, listingType, Business, name, Medeco Medical...., addressLine, xxxxx, longitude, xxxx, latitude, xxxx, state, NSW, postcode, 2000, type, phone, value, (02) 92648544
JSON的外觀如何?你想讓CSV看起來像什麼? –
剛更新問題隊友。 Ta – Doz
這是一種奇怪的CSV格式 - 通常CSV在第一行中有鍵列,在後面的行中有列值(因此映射嵌套的JSON結構會變得很混亂) –