HttpServletRequest request = ServletActionContext.getRequest(); String header = request.getHeader("User-Agent").toUpperCase(); if (header.contains("MSIE") || header.contains("TRIDENT") || header.contains("EDGE")) { fileName = URLEncoder.encode(fileName, "utf-8");//IE }else{ fileName = new String(fileName.getBytes(), "ISO8859-1");//FX } response.setDateHeader("Expires", 0); response.setContentType("application/octet-stream;charset=UTF-8"); response.setHeader("Content-disposition","attachment;filename=\"" + fileName + "\"");