gbiczo / oxcelix Goto Github PK
View Code? Open in Web Editor NEWOxcelix - A fast and simple .xlsx file parser
License: MIT License
Oxcelix - A fast and simple .xlsx file parser
License: MIT License
The gemfile specifies that oxcelix should work with rubyzip 0.9.9. However, oxcelix uses "require 'zip'" which does not work with this version of rubyzip.
I have a workbook which includes ZIP codes in fields formatted as Text. When I .retrieve the sheet and try to_fmt it, it errors with:
SyntaxError:
(eval):1: Invalid octal digit
04479
I believe this is because of the mapping in nf.rb. The ID of 49 is mapped to a numeric; I believe it should be a string.
To replicate:
fixtures/test.xlsx
in Microsoft Excel04449
into cell A2Then try:
w = Oxcelix::Workbook.new('spec/fixtures/test.xlsx')
w.sheets[0].to_fmt
::Oxcelix::Workbook.new('import.xlsx')
NoMethodError: undefined method `name=' for #<Matrix:0x0000014bea92b8>
from /Users/g3d/.rvm/gems/ruby-2.1.1@isis/gems/oxcelix-0.4.0/lib/oxcelix/workbook.rb:277:in `block in matrixto'
"Excel file processing involves XML document parsing. Usually, this is achieved by some XML library such as Nokogiri[http://nokogiri.org].
The main drawbacks of this approach are memory usage and speed. "
This is not right. Parsing an XML file with nokogiri does not necessarily use a lot of memory and can be quite fast.
It depends on whether you use DOM parsing or SAX parsing. nokogiri has both DOM parsing and SAX parsing. So does ox. If you use DOM parsing, a lot of memory will be used and your program will be slower than if you were using SAX parsing. This difference has to do with the type of parsing and not the gem type. ox has a faster SAX parser than nokogiri according to some benchmarks.
I'm sure you are aware of this, but the documentation still reads wrong.
I am receiving the following depreciation notice with ruby 2.5.1
gems/oxcelix-0.4.1/lib/oxcelix.rb:36: warning: constant ::Fixnum is deprecated
It is due to a change made in ruby 2.4.0
https://bugs.ruby-lang.org/issues/12005
https://www.ruby-lang.org/en/news/2016/12/25/ruby-2-4-0-released/
@gbiczo Can you create a new release? It would be nice to have a full gem release, instead of having to pull master from GitHub, to correct the Fixnum issue.
(Also, a release tag was never created for 0.4.0.)
Call to Oxcelix::Workbook.new
blows up with Errno::EEXIST: File exists @ dir_s_mkdir
when tmp
exists under the current directory. It happens due to FileUtils.mkdir(@destination)
at workbook.rb:52. I would have sent you a pull request but could not make the specs run on my machine.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.