该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
String pdfName=null;
try {
pdfName = new String(request.getParameter("pdfName").getBytes("ISO-8859-1"), "UTF-8");
} catch (UnsupportedEncodingException e2) {
e2.printStackTrace();
}
response.setContentType("application/pdf");
ServletOutputStream out=null;
try {
out = response.getOutputStream();
} catch (IOException e1) {
e1.printStackTrace();
}
//加上下面这句则可以在浏览器外打开,或者保存
//resp.setHeader("Content-disposition", "attachment;filename=sample.pdf");
File pdf = null;
BufferedInputStream buf = null;
String[] arr = pdfName.split("/");
try{
pdf = new File("C:\\"+arr[0]+"/"+arr[1]);
List fileName = listPath(pdf);
for(int i = 0; i < fileName.size(); i++){
String[] ar = fileName.get(i).toString().split("\\\\");
if(ar[ar.length-1].equals(arr[2]+".pdf")){
pdf = new File(fileName.get(i).toString());
response.setContentLength((int)pdf.length());
FileInputStream input = new FileInputStream(pdf);
buf = new BufferedInputStream(input);
int readBytes = 0;
while((readBytes = buf.read()) != -1){
out.write(readBytes);
}
}
}
} catch(IOException e){
e.printStackTrace();
} finally{
try {
if(out != null) out.close();
if(buf != null) buf.close();
}
catch(Exception e){
e.printStackTrace();
}
}
return null;