|
用ajax下载smartupload的内容无法显示汉字情况,大有人遇到,下面给出服务器端以及客户端上的解决方案,感兴趣的朋友不要错过
复制代码 代码如下: 服务器端: public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException{ req.setCharacterEncoding("GBK"); // 新建一个SmartUpload对象 SmartUpload su = new SmartUpload(); su.initialize(this.getServletConfig(),req,resp); // 设定contentDisposition为null以禁止浏览器自动打开文件, //保证点击链接后是下载文件。若不设定,则下载的文件扩展名为 //doc时,浏览器将自动用word打开它。扩展名为pdf时, //浏览器将用acrobat打开。
su.setContentDisposition(null); //下载文件 try { su.downloadFile("D://upload/"+"test.txt"); } catch (SmartUploadException e) { // TODO Auto-generated catch block e.printStackTrace(); } 复制代码 代码如下: 客户端: <script> function getFile(){ $.get("<%=basePath%>LoadFileServlet","",function(data){ alert(data); }); } </script> <a href="#" onclick="getFile()">getfile</a> txt中的中文内容不显示,如果通过超链接访问server端,下载后没有乱码
先MARK下,以后再看看 |
|