0
我需要生成.xls格式的報告,嘗試寫入數據時,我收到以下錯誤parse_fellow.rb的不兼容的字符編碼錯誤 - 當寫一個xls文件
~/.rvm/gems/[email protected]/gems/spreadsheet-0.6.4/lib/spreadsheet/excel/writer/workbook.rb:515:in `block in _write_sst': incompatible character encodings: ASCII-8BIT and US-ASCII (Encoding::CompatibilityError)
from ~/.rvm/gems/[email protected]/gems/spreadsheet-0.6.4/lib/spreadsheet/excel/writer/workbook.rb:502:in `each'
from ~/.rvm/gems/[email protected]/gems/spreadsheet-0.6.4/lib/spreadsheet/excel/writer/workbook.rb:502:in `each_with_index'
from ~/.rvm/gems/[email protected]/gems/spreadsheet-0.6.4/lib/spreadsheet/excel/writer/workbook.rb:502:in `_write_sst'
from ~/.rvm/gems/[email protected]/gems/spreadsheet-0.6.4/lib/spreadsheet/excel/writer/workbook.rb:489:in `write_sst'
from ~/.rvm/gems/[email protected]/gems/spreadsheet-0.6.4/lib/spreadsheet/excel/writer/workbook.rb:439:in `write_from_scratch'
from ~/.rvm/gems/[email protected]/gems/spreadsheet-0.6.4/lib/spreadsheet/excel/writer/workbook.rb:620:in `write_workbook'
from ~/.rvm/gems/[email protected]/gems/spreadsheet-0.6.4/lib/spreadsheet/writer.rb:15:in `block in write'
from ~/.rvm/gems/[email protected]/gems/spreadsheet-0.6.4/lib/spreadsheet/writer.rb:14:in `open'
from ~/.rvm/gems/[email protected]/gems/spreadsheet-0.6.4/lib/spreadsheet/writer.rb:14:in `write'
from ~/.rvm/gems/[email protected]/gems/spreadsheet-0.6.4/lib/spreadsheet/workbook.rb:106:in `write'
from lib/parse_fellow.rb:449:in `generate_match_report_fellow'
from lib/parse_fellow.rb:547:in `<top (required)>'
from ~/.rvm/gems/[email protected]/gems/railties-3.0.7/lib/rails/commands/runner.rb:48:in `eval'
from ~/.rvm/gems/[email protected]/gems/railties-3.0.7/lib/rails/commands/runner.rb:48:in `<top (required)>'
from ~/.rvm/gems/[email protected]/gems/railties-3.0.7/lib/rails/commands.rb:39:in `require'
from ~/.rvm/gems/[email protected]/gems/railties-3.0.7/lib/rails/commands.rb:39:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'
行號449是
workbook.write("#{RAILS_ROOT}/lib/#{file}")
值傳遞給我的工作簿對象之前,我曾嘗試使用下面的方法他們進行編碼以ASCII和UTF-8,但沒有人幫我
"my text content".force_encoding("ASCII-8BIT")
我的開發環境:
ruby 1.9.2p180 (2011-02-18 revision 30909) [i686-linux]
Rails 3.0.7
spreadsheet (0.6.4)
我不知道這裏有什麼問題會如何調試這個問題。任何輸入都會對我非常有幫助。
不知道你需要做什麼,但也許這個鏈接可以幫助。 http://ruby.runpaint.org/encoding 或者這一個 http://stackoverflow.com/questions/2095525/can-i-set-the-default-string-encoding-on-ruby-1- 9 – Rasmus