5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
# File 'lib/loader_xls.rb', line 5
def self.makeMatrix(file, opts={ })
if(opts)
offset = opts[:offset]
sheet = opts[:sheet]
end
offset ||= 0
sheet ||= 0
out = []
path = self.encodePath(file)
xl = Spreadsheet.open(path, 'rb')
sheet = xl.worksheet(sheet)
rowsize = sheet.last_row_index
(rowsize+1-offset).times do |i|
row = sheet.row(i+offset)
orow = []
row.each do |ele|
if(ele.class == Float)&&(ele.to_s =~ /(\d+)\.0/)
ele = $1
end
if(ele.class == Spreadsheet::Formula)
ele = ele.value
end
if(ele == nil)
ele = ''
end
ele = ele.to_s.gsub(/\n/, '<br>')
orow << ele
end
out << orow
end
return out
end
|