json_csv
A pure-ruby library for converting deeply nested JSON structures to CSV...and back!
Installation
gem install json_csv
Usage
require 'json_csv'
path_to_output_csv_file = '/path/to/file.csv'
# Write json-like hash objects to a csv file
JsonCsv.create_csv_for_json_records(path_to_output_csv_file) do |csv_builder|
digital_objects_for_batch_export(batch_export) do |digital_object|
csv_builder.add({...json-like hash...})
end
end
# Read csv back into json-like hash objects
JsonCsv.csv_file_to_hierarchical_json_hash(csv_file.path) do |json_hash_for_row, csv_row_number|
puts "Row: #{csv_row_number}" # prints out 2 the first time, then 3, etc.
puts "Object: #{json_hash_for_row}" # prints out a hierarchical json object, created from the csv row
end
See specs for advanced usage.
Running Tests (for developers):
Tests are great and we should run them. Here's how:
bundle exec rake json_csv:ci