Gem 大家读写 Excel 都用 spreadsheet 这个插件吗?

ruby_sky · 2012年02月16日 · 最后由 lgn21st 回复于 2013年09月23日 · 11303 次阅读

刚刚学 ruby 的时候用 ruby 自身的 REXML 写了一个写 Excel 的功能。写少量的数据还可以,但数据上几百后,消耗的时间就长的要命,性能方面差的要死~

我还从没做过这个功能

#1 楼 @huacnlee 那 rails 生成 excel,用什么插件性能高点?

#2 楼 @ruby_sky 遇到 Excel 的场景,我都考虑用 csv 文件替代,ruby 读取 csv 文件有 FasterCSV,而 Excel 也可以直接打开 csv 文件,代码优化一下的话,百万条记录的 csv 文件我都操作过,性能不是问题。

偶最懒。。。直接写个 table 的 view 改 header :content_type => "application/vnd.ms-excel;charset=GBK" 浏览器就把 execl 弹出来了,哈哈哈哈哈哈哈。

#3 楼 @lgn21st 看了一些文档,刚刚写出来了,我读了 4000 条数据,大概只用了 1~2 秒的时间!问题得到解决,谢谢!

#4 楼 @ywencn 你的方法在之前也查找到了。就是觉得很好玩,哈哈。。

@ywencn 的是 window 上平台可以,spreadsheet 图表功能貌似还很脆弱,建议还是用 POI

用 FasterCSV,读取数据库中的数据的时候注意一下读取方式

foo 貌似不错

错了 roo

#8 楼 @geekontheway #9 楼 @lxyluu 谢谢了,用了 fasterCSV,解决了,只是在时间方法的显示生成的效果不是很好。现在要对接 RSS,解析 HTML,有个分页的新闻,想法在 http://ruby-china.org/topics/983 讨论过了,但觉得这样好麻烦。求个爽快点的方法。

#3 楼 @lgn21st 您用 csv 文件没有遇到过 excel 打开成乱码的情况吗?LibreOffice Calc 和 WPSOffice 表格打开都没问题……

#12 楼 @hexawing 不瞒您说,我的电脑上甚至没有 Excel 这个软件,另外 csv 可以用任意一种文本编辑器打开,也应该比较容易查看编码格式和转码。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号