Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法从客户端删除服务器中的文件?_Java_File_Jsp_Servlets - Fatal编程技术网

Java 无法从客户端删除服务器中的文件?

Java 无法从客户端删除服务器中的文件?,java,file,jsp,servlets,Java,File,Jsp,Servlets,我可以获取目录的文件名,但无法删除它们 <%@ 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://ww

我可以获取目录的文件名,但无法删除它们

<%@ 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>

在此处插入标题

首先,JSP并不是一个做这种事情的好地方。第二件事是您正在使用JDK7。最好切换到
NIO.2api
,如果旧文件中出现故障,API不会抛出异常。因此,您应该尝试以下方式来喜欢
NIO.2api

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);
}

请确保运行web服务器的用户有权删除这些文件。canWrite()方法的父目录返回什么?

您可以定义
不可
?有例外吗?错误Stacktrace?运行web服务器的用户是否有权删除这些文件?canWrite()方法的父目录返回了什么?请共享例外跟踪他们共享控制台和db连接以及程序中的where db连接。顺便说一句:我想这是缺乏权限的问题。是的,它的权限问题已经解决了谢谢你的回复Hey@user3329098,您是如何回答该查询的。@jmail:切换到NIO.2会引发异常,因此您将得到真正的问题描述。