Class: EvoSynth::Output::CSVExporter
- Inherits:
-
Object
- Object
- EvoSynth::Output::CSVExporter
- Defined in:
- lib/evosynth/output/exporter/csv_exporter.rb
Instance Method Summary collapse
- #export(filename) ⇒ Object
-
#initialize(logger, write_header = false, separator = ',') ⇒ CSVExporter
constructor
A new instance of CSVExporter.
Constructor Details
#initialize(logger, write_header = false, separator = ',') ⇒ CSVExporter
33 34 35 36 37 |
# File 'lib/evosynth/output/exporter/csv_exporter.rb', line 33 def initialize(logger, write_header = false, separator = ',') @logger = logger @write_header = write_header @separator = separator end |
Instance Method Details
#export(filename) ⇒ Object
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
# File 'lib/evosynth/output/exporter/csv_exporter.rb', line 39 def export(filename) # Note: I see no advantage in using the 'csv' library for this File.open(filename, "w+") do |file| if @write_header file.write("counter") file.write(@separator) unless @logger.column_names.nil? file.write(@logger.column_names.join(@separator)) file.write("\n") end @logger.data.each_key do |key| file.write(key) file.write(@separator) unless @logger.data[key].nil? file.write(@logger.data[key].join(@separator)) file.write("\n") end end end |