CSVCoordinateAccessor is module for setter and getter with coordinate like csv.
Add this line to your application's Gemfile:
gem 'csv_coordinate_accessor'
And then execute:
$ bundle
Or install it yourself as:
$ gem install csv_coordinate_accessor
require 'csv_coordinate_accessor'
csv = CSV.read('./spec/fixtures/sample.csv')
=> [["id", "category", "name"], ["1", "fruit", "apple"], ["2", "furit", "orange"], ["3", "fruit", "banana"]]
## Extend module
csv = csv.extend CSVCoordinateAccessor
## get value with coordinate
csv.get('A2')
=> "1"
csv.get('B2')
=> "fruit"
csv.get('C2')
=> "apple"
## set value with coordinate
csv.set('C2', 'pineapple')
csv
=> [["id", "category", "name"], ["1", "fruit", "pineapple"], ["2", "furit", "orange"], ["3", "fruit", "banana"]]
- Fork it ( https://github.com/[my-github-username]/csv_coordinate_accessor/fork )
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request