Sha256: 1f6f32be197b2081add475780ecabe33ad3478709341ba476a9f2d85fa872e7c
Contents?: true
Size: 999 Bytes
Versions: 3
Compression:
Stored size: 999 Bytes
Contents
# frozen_string_literal: true module Workbook module Readers module CsvReader def load_csv text, options = {} csv = text parse_csv csv, options end def csv_lib CSV end def parse_csv csv_raw, options = {} optimistic_date_converter = Workbook::Cell.new.string_optimistic_date_converter options = { converters: [optimistic_date_converter, :all] }.merge(options) csv = nil begin csv = CSV.parse(csv_raw, **options) rescue CSV::MalformedCSVError csv_excel = CSV.parse(csv_raw, **options.merge({col_sep: ";"})) csv = csv_excel if csv_excel[0].count > 1 end if csv.nil? || (csv[0].count == 1) csv_excel = CSV.parse(csv_raw, **options.merge({col_sep: ";"})) csv = csv_excel if csv_excel[0].count > 1 end self[0] = Workbook::Sheet.new(csv, self) unless sheet.has_contents? end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
workbook-0.9.1 | lib/workbook/readers/csv_reader.rb |
workbook-0.9.0 | lib/workbook/readers/csv_reader.rb |
workbook-0.8.2 | lib/workbook/readers/csv_reader.rb |