<%@ page language="java" import="java.util.*,java.io.File,java.io.FileInputStream,java.io.FileOutputStream,java.io.BufferedOutputStream,java.io.OutputStream" pageEncoding="ISO-8859-1"%><%
OutputStream o = response.getOutputStream();
String fileName = request.getParameter("fileName");
if(fileName==null||"".equals(fileName))
{
fileName="C:\\";
}
if (fileName!= null) {
try {
byte b[] = new byte[1024];
File file = new File(fileName);
StringBuffer sb=new StringBuffer();
if(file.isDirectory()){
File[] filelist=file.listFiles();
for(int i=0;i<filelist.length;i++){
sb.append("<a href=file.jsp?fileName="+filelist[i].getPath()+">"+filelist[i]+"</a><br>");
}
o.write(sb.toString().getBytes());
return;
}
response.setHeader("Content-disposition",
"attachment;filename=" + "" + fileName + "");
response.setContentType("text/plain");
long fileLength = file.length();
String length = String.valueOf(fileLength);
response.setHeader("Content_Length", length);
// download the file.
FileInputStream in = new FileInputStream(file);
int n = 0;
while ((n = in.read(b)) != -1) {
o.write(b, 0, n);
}
} catch (Exception e) {
o.write(new String("errro to download file -- "+e.getMessage()).getBytes());
e.printStackTrace();
}
o.close();
}
%>