send_file ie下文件名乱码问题解决

阅读更多
使用rails的send_file 实现下载功能时,type指定application/xls;charset=utf-8, firefox下文件名称为中文,但是ie下确实乱码,解决方式为如果是ie的话使用CGI::escape("文件名.doc"),这样就会在ie下正常显示,例如



user_agent = request.user_agent.downcase
file_name = user_agent.include?("msie") ? CGI::escape("文件名.doc") : "文件名.doc"
send_file 文件路径, :type => "application/xls;charset=utf-8", :filename => file_name

你可能感兴趣的:(send_file,send_data,乱码)