2010-07-07 86 views
0

我正在開發一個Servlet,它應該列出頁面上目錄C:\UploadedFiles\CompanyWork上的所有文件,並將每個文件的鏈接放在每個文件上,就像這個例子一樣(使用Test.doc作爲測試):列表和鏈接文件

<a href="C:\UploadedFiles\CompanyWork\Test.doc">Test.doc</a> 

但我不知道如何做到這一點,我只知道如何得到的文件名,並列出它們(這是一個程序,但很容易轉換成Servlet的):

public static void main(String args[]) { 
    File root; 
    if (args.length > 0) root = new File(args[0]); 
    else root = new File(System.getProperty("user.dir")); 
    ls(root); 
} 

private static void ls(File f) { 
    File[] list = f.listFiles(); 
    for (File file : list) { 
     if (file.isDirectory()) ls(file); 
     else System.out.println(file); 
    } 
} 

回答

1

寫一個簡單的servlet(按照tutorisl @http://java.sun.com/developer/onlineTraining/Programming/BasicJava1/servlet.html)。在您的doGet()方法,寫出像下面

response.setContentType("text/html"); 
PrintWriter out = response.getWriter(); 

File[] list = f.listFiles(); 
    for (File file : list) { 
     if (file.isDirectory()) ls(file); 
     else out.println("<a href='+file.toURL()+'>'+file.getName()+'</a>"); 
    } 

你可以使用Apache的commons-IO庫

簡化上市邏輯