2014-02-21 4 views
0

я могу получить имена файлов каталога, но я не могу удалить ихне удалось удалить файл на сервере с клиентской стороны?

<%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.util.* ,java.text.* , java.io.*,java.io.File" errorPage="" %> 
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
    <html> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
    <title>Insert title here</title> 
    </head> 
    <body> 
    <% 

    String files; 
    boolean issuccess=true; 
    //out.println("hi "); 
    String strDirectoy3=config.getServletContext().getRealPath("/"); 
    //File file = new File("D:\\Test\\hireminibusandcoach.co.uk\\ROOT\\administrator"); FileInputStream in = new FileInputStream("c:/a.txt"); 

    try{ 

     File file = new File(strDirectoy3); 
     File[] listOfFiles = file.listFiles(); 

    for (int i = 0; i <2; i++) 
    { 
     if (listOfFiles[i].isFile()) 
     { 
      files = listOfFiles[i].getName(); 

      out.println(listOfFiles[i].toString()); 
       issuccess=new File(files).delete(); 


     } 
    } 

    out.println(" /n Deletion "+issuccess); 
    }catch(Exception e){ 

     out.println(e); 
    } 

    %> 

    </body> 
    </html> 
+0

Можете ли вы определить 'неспособность'? Любое исключение? Ошибка ? Трассировки стека ? –

+3

Имеет ли ваш пользовательский веб-сервер права на удаление этих файлов? Какая родительская директория возвращает метод canWrite()? –

+0

Pls share Исключительные следы –

ответ

0

Прежде всего, JSP не является хорошим местом, чтобы делать такие вещи. И тогда во-вторых, вы используете JDK7. Хорошо перейти на NIO.2 API, он выдает исключения в случае отказа в старом API файлов. Таким образом, вы должны попробовать это нравится NIO.2 API следующим как:

try 
{ 
    Path path = file.toPath(); 
    Files.delete(path); 
} 
catch (NoSuchFileException x) 
{ 
    System.err.format("%s: no such" + " file or directory%n", path); 
} 
catch (DirectoryNotEmptyException x) 
{ 
    System.err.format("%s not empty%n", path); 
} 
catch (IOException x) 
{ 
    // File permission problems are caught here. 
    System.err.println(x); 
} 
+0

BTW: Я думаю, что это проблема отсутствия разрешений. –

+0

yes его проблема разрешения, которую он разобрал благодаря вашему ответу – PRK449

+0

hey @ user3329098, как вы сказали этот ответ для этого запроса. – jmail

0

Пожалуйста, убедитесь, что работает пользователь веб-сервер имеет право удалить эти файлы. Какая родительская директория возвращает метод canWrite()?

+0

@ user3336440 не могли бы вы принять решение? –

Смежные вопросы