From 8280a21a23d44aa90177e2bc041d0b8dc8556f4b Mon Sep 17 00:00:00 2001 From: Unit 193 Date: Mon, 12 Jun 2017 03:37:11 -0400 Subject: Import Upstream version 2.7.1 --- lib/roo/formatters/xml.rb | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 lib/roo/formatters/xml.rb (limited to 'lib/roo/formatters/xml.rb') diff --git a/lib/roo/formatters/xml.rb b/lib/roo/formatters/xml.rb new file mode 100644 index 0000000..ebb8cde --- /dev/null +++ b/lib/roo/formatters/xml.rb @@ -0,0 +1,31 @@ +# returns an XML representation of all sheets of a spreadsheet file +module Roo + module Formatters + module XML + def to_xml + Nokogiri::XML::Builder.new do |xml| + xml.spreadsheet do + sheets.each do |sheet| + self.default_sheet = sheet + xml.sheet(name: sheet) do |x| + if first_row && last_row && first_column && last_column + # sonst gibt es Fehler bei leeren Blaettern + first_row.upto(last_row) do |row| + first_column.upto(last_column) do |col| + next if empty?(row, col) + + x.cell(cell(row, col), + row: row, + column: col, + type: celltype(row, col)) + end + end + end + end + end + end + end.to_xml + end + end + end +end -- cgit v1.2.3