我正在使用电子表格来解析 xls 文件。它工作得很好。但今天我的一个用户上传了一个文件,但出现错误“未知编码名称 - MACINTOSH”
我的代码是: book = Spreadsheet.open file_path sheet1 = book.worksheet 0
这是出现错误的 excel 文件: https ://www.dropbox.com/s/jv37pk5rpiy9259/testlisttextnonames2.xls
你们能帮我解决这个问题吗?
我正在使用电子表格来解析 xls 文件。它工作得很好。但今天我的一个用户上传了一个文件,但出现错误“未知编码名称 - MACINTOSH”
我的代码是: book = Spreadsheet.open file_path sheet1 = book.worksheet 0
这是出现错误的 excel 文件: https ://www.dropbox.com/s/jv37pk5rpiy9259/testlisttextnonames2.xls
你们能帮我解决这个问题吗?
遇到同样的问题。这是我能推断出的最好的:
“Macintosh”不是 Ruby 1.9+ 中的已知编码。尝试打开控制台并运行“Encoding.find('Macintosh')”。你会得到同样的错误。
那么什么是可用的?在控制台中:“Encoding.list”。选项之一是 MacRoman。我猜这是紧随其后的。
因此,如果我们将 lib/spreadsheet/excel/internals.rb 中 10000 和 32768 的映射更改为映射到“MACROMAN”,它应该可以工作。
在本地测试,确实如此。
我打开了一个拉取请求:https ://github.com/zdavatz/spreadsheet/pull/51
一些参考链接:* https://en.wikipedia.org/wiki/Mac_OS_Roman * http://bugs.python.org/issue843590