Tomcat将CRLF附加到响应字符串

时间:2012-07-19 15:26:33

标签: tomcat servlets

在我的servlet中,我将一个字符串作为附件发送到浏览器。当我将附件保存到磁盘并打开它时,该字符串附加了一个CRLF(Catrige return,换行符)。 Tomcat是这样做还是浏览器这样做?如何不附加此CRLF?

代码:

response.setHeader("Content-Disposition", "attachemnt; file=.........");  
PrintWriter out = response.getWriter();  
out.println("abcd");  

浏览器保存的文件中有3行:(使用记事本++时可以看到CRLF并打开“查看所有字符”)

1 abcd

2 CRLF

3

2 个答案:

答案 0 :(得分:2)

可能你错过了UTF-8编码。

尝试添加:

request.setCharacterEncoding( "UTF-8" );
response.setContentType("UTF-8");

答案 1 :(得分:2)

CRLF似乎是ServletOutputStream的println函数规范的一部分,请参阅Tomcat manual

您可以使用out.print代替out.println