首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >防止Merb脱光马车退货?

防止Merb脱光马车退货?
EN

Stack Overflow用户
提问于 2014-05-27 15:06:49
回答 1查看 51关注 0票数 0

我在这个话题上尝试过的每一个Google搜索都与我的问题相反!

我正在为web服务的用户构建一个动态可下载的文本文件,以便他们能够导出他们的数据。我正在使用标准的MVC行为动态编写文本文件,将标题设置为强制在控制器中下载这样的文件:

代码语言:javascript
复制
headers["Content-Disposition"] = "attachment; filename=#{filename}.txt"

我遇到了一个问题,Windows终端用户正在下载文件并用记事本打开它--所有的行尾都被去掉了,这只是一个很大的混乱。

我已经以尽可能多的不同方式重新创建了我的视图文件,将它保存为不同的编码,在Windows机器上重新创建它,并在每一行的末尾三次检查它是否有CRLF。

cat -v app/views/export/export.text.erb显示了这一点:

代码语言:javascript
复制
<%= session.user.username %>'s Data^M
<%= @posts.count %> Posts^M
^M
<% @posts.each do |post| -%>^M
Prompt: <%= post.prompt.title %>^M
Prompt subtitle: <%= post.prompt.subtitle %>^M
^M
Title:    <%= post.title %>^M
Subtitle: <%= post.subtitle %>^M
Created:  <%= post.created_at.to_s %>^M
Updated:  <%= post.updated_at.to_s %>^M
Type:     <%= post.type %>^M
Content:^M
<%= JSON.pretty_generate(post.fields) %>^M
^M
===^M
^M
<% end %>^M

我不能要求Windows用户使用其他文本阅读器。以前一定有人解决过这个问题。这个问题的另一面是:我在这个服务器上没有sudo权限。我可以要求服务器管理员安装一些东西,但我想知道它会在我之前工作。

帮我堆栈溢出,你是我唯一的希望!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-28 16:42:39

因此,我终于找到了一个解决方案,是一个小问题,更好的建议是欢迎的。

我没有试图找出CR被删除的位置,而是停止强制下载带有头文件的文本文件(如上面所示),而是允许浏览器以其他方式呈现文本。IE和其他浏览器都可以在不需要任何干扰的情况下处理行尾,用户可以复制文本文件或“另存为”,并在记事本中正确显示。

不完美,但现在还行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23892903

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档