我正在开发一个 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);
}
}
最佳答案
编写一个简单的servlet(按照tutorialsl @ 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 库简化列表逻辑
关于java - 列出和链接文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3197564/