在Servlet中,我使用以下代码下载文件。下一行字符“\ n \ r”不起作用。而不是新线,它显示框。任何人都可以帮助解决这个问题吗?
String temp = "hello"+"\n\r"+"welcome";
response.setContentType("text/plain");
response.setHeader("Content-Disposition","attachment;filename=sample.txt");
PrintWriter out = response.getWriter();
out.write(temp);
out.flush();
out.close();
答案 0 :(得分:3)
您可以使用println
方法:
PrintWriter out = response.getWriter();
out.println("hello");
out.println("welcome");
如果出于某种原因这不合适,您可以考虑从line.separator
System property获取行分隔符:
System.getProperty("line.separator")
答案 1 :(得分:2)
换行的Dos / Windows格式为CR LF(\ r \ n),然后: 尝试将\ n \ r \ n替换为\ r \ n。
或者,如果您处于unix环境中,则只能尝试\ n。