我正在从事jsp项目。我可以选择下载文件或图像。但是问题是下载文件后,似乎文件格式不受支持。如何解决该问题?
首先,在jsp页面中创建一个简单的链接,该链接将您重定向到servlet。您可以放置任何类型的文件来代替jpg。
<a href="ServletName?value=filename.jpg">Downlaod</a>
这里是用于从Web目录下载任何文件的servlet代码。不要忘记在您的网页目录中创建“文件”文件夹并将其粘贴。
try (PrintWriter out = response.getWriter()) {
//fetch the file name from the url
String name = request.getParameter("value");
//get the directory of the file.
String path = getServletContext().getRealPath("/" + "files" + File.separator + name);
//set the content type
response.setContentType("APPLICATION/OCTET-STREAM");
//force to download dialog
response.setHeader("Content-Disposition", "attachment; filename=\"" + name + "\"");
FileInputStream ins = new FileInputStream(path);
int i;
while ((i = ins.read()) != -1) {
out.write(i);
}
ins.close();
out.close();
}
仅此而已。您可以查看此Download File in jsp and servlet youtube视频以了解更多。