我尝试使用以下代码读取excel文件:
require 'rubygems'
require 'parseexcel'
workbook=Spreadsheet::ParseExcel.parse("D:/TEST.xls")
我遇到了以下错误:
C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': iconv will be deprecated in the future, use String#encode instead. default formats are encoded in ISO-8859-1
C:/Ruby193/lib/ruby/gems/1.9.1/gems/parseexcel-0.5.2/lib/parseexcel/olestorage.rb:108:in `initialize': No such file or directory - D:/TEST.xls (Errno::ENOENT)
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/parseexcel-0.5.2/lib/parseexcel/olestorage.rb:108:in `open'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/parseexcel-0.5.2/lib/parseexcel/olestorage.rb:108:in `initialize'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/parseexcel-0.5.2/lib/parseexcel/parser.rb:173:in `new'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/parseexcel-0.5.2/lib/parseexcel/parser.rb:173:in `parse'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/parseexcel-0.5.2/lib/parseexcel/parseexcel.rb:10:in `parse'
from lkc.rb:4:in `<main>'
问题是什么,为什么我不能阅读excel文件?
答案 0 :(得分:3)
我认为实际的错误信息就是这个,在第二行:
No such file or directory - D:/TEST.xls (Errno::ENOENT)
请尝试D:\TEST.xls
或D:\\TEST.xls
。
答案 1 :(得分:1)
标题具有误导性,这个“Iconv将来会被弃用”并不是真正的问题 - 这只是一个警告。正如@ brandon-tilley所说,问题是您尝试打开的文件不存在。尝试打开IRB,然后键入File.open(“D:\ Test.xml”)等,直到您没有收到错误消息。然后你知道文件存在且路径正确,你可以继续调试其他方面(如果仍有错误)。