有两种方法可以实现
第一种是用输出流
response.setContentType("text/plain");
response.setHeader("Content-disposition","attachment;filename=" + "result.txt");
String text = "some text";
OutputStream out = response.getOutputStream();
out.write(text.getBytes());
out.flush();
out.close();
这种有个问题就是不能换行,输出的字符串不能按你预想的格式来做,而是全在一行里,如果强行加“/r”,用记事本打开会看到一个小方块,用UltraEdit等文本编辑器打开可以看到换行。
第二种是用out.println直接打印
<%
response.setContentType("text/plain;charset=GBK");
response.setHeader("Content-disposition","attachment; filename=table.txt");
out.println("hello");
%>
这种需要注意jsp文件中不能出现<%@ page 。。。%>出现一次就是一行,虽然这行是空的。
如果需要引用到其他的类,最好把类的报名全部写全,在代码中直接new,比如java.sql.ResultSet rs=null;
由于直接用println输出,所以可以在你想要的地方换行,用记事本和UltraEdit等文本编辑器打开都是正常换行。