txt下載.
jsp層:
var url = "zmes001.cmd?method=exportText&message="+message;
window.open(url);
action層:
/**
* 導入excel模板報錯txt下載 write by cqq 2018-12-07
*
* @param req
* @param rep
* @param errorHandler
* @param messageHandler
* @param viewHelper
* @return
*/
public void exportText(HttpServletRequest req,
HttpServletResponse rep, IErrorHandler errorHandler,
IMessageHandler messageHandler, ViewHelper viewHelper) {
String jsonString = req.getParameter("message");
this.writeToTxt(rep,jsonString,"導入錯誤數據信息");
}
/**
* 導出文本文件 write by cqq 2018-12-07
*
* @param req
* @param rep
* @param errorHandler
* @param messageHandler
* @param viewHelper
* @return
*/
public static void writeToTxt(HttpServletResponse response,String jsonString,String fileName) {//設置響應的字符集
response.setCharacterEncoding("utf-8");
//設置響應內容的類型
response.setContentType("text/plain");
try {
// fileName = URLEncoder.encode(fileName, "UTF-8");
fileName = new String(fileName.getBytes("gb2312"), "ISO8859-1");
} catch (Exception e) {
fileName = fileName;
}
//設置文件的名稱和格式
response.addHeader(
"Content-Disposition",
"attachment; filename="
+ fileName
+ MessageFormat.format("{0,date,yyyy-MM-dd HH:mm:ss}", new Object[]{Calendar.getInstance().getTime()})
+ ".txt");//通過後綴可以下載不同的文件格式
BufferedOutputStream buff = null;
ServletOutputStream outStr = null;
try {
outStr = response.getOutputStream();
buff = new BufferedOutputStream(outStr);
buff.write((jsonString).getBytes("UTF-8"));
buff.flush();
buff.close();
} catch (Exception e) {
e.printStackTrace();
}
}