A
aidy
Hi,
I am reading a csv file using "require 'csv'". If the row == nil I
would like to move onto the next iteration.
This is the code
def enter_territories()
reader = CSV.open('C:\territory_data.csv', 'r')
header = reader.shift
reader.each{|row| next if row.nil?
STDERR.puts "row == #{row} "
p row
}
end
And this is the output
row == UNITED KINGDOMBRISTOLDE1SpringMA Portfolio23/05/2006null
["UNITED KINGDOM", "BRISTOL", "DE1", "Spring", "MA Portfolio",
"23/05/2006", "nu
ll", nil, nil, nil, nil, nil, nil]
row == UNITED KINGDOMBRISTOLDE2International ExpressMA
Portfolio23/05/2006null
["UNITED KINGDOM", "BRISTOL", "DE2", "International Express", "MA
Portfolio", "2
3/05/2006", "null", nil, nil, nil, nil, nil, nil]
row ==
[nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil]
row ==
[nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil]
row ==
[nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil]
row ==
[nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil]
I cannot understand for the life of me why nil rows are being printed.
I have also used row.empty?
Cheers
Aidy
I am reading a csv file using "require 'csv'". If the row == nil I
would like to move onto the next iteration.
This is the code
def enter_territories()
reader = CSV.open('C:\territory_data.csv', 'r')
header = reader.shift
reader.each{|row| next if row.nil?
STDERR.puts "row == #{row} "
p row
}
end
And this is the output
row == UNITED KINGDOMBRISTOLDE1SpringMA Portfolio23/05/2006null
["UNITED KINGDOM", "BRISTOL", "DE1", "Spring", "MA Portfolio",
"23/05/2006", "nu
ll", nil, nil, nil, nil, nil, nil]
row == UNITED KINGDOMBRISTOLDE2International ExpressMA
Portfolio23/05/2006null
["UNITED KINGDOM", "BRISTOL", "DE2", "International Express", "MA
Portfolio", "2
3/05/2006", "null", nil, nil, nil, nil, nil, nil]
row ==
[nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil]
row ==
[nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil]
row ==
[nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil]
row ==
[nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil]
I cannot understand for the life of me why nil rows are being printed.
I have also used row.empty?
Cheers
Aidy