java.io.FileNotFoundException :(访问被拒绝)

时间:2013-07-01 08:32:37

标签: java file file-permissions filenotfoundexception

我正在尝试在Java项目根目录中动态创建一些文件。但是当我运行代码时出现以下错误。

java.io.FileNotFoundException: D:\POS_ALL\T_POS_NEWEST\TouchPosApplication\WebContent\zharaimages\279 (Access is denied)

是否可以在Java中将文件写入根项目文件夹?这是使用的代码。

private void createImage(PosItemImageDTO imageDTO,String path) throws IOException {
        byte[] bytes = imageDTO.getPosItemImage();
        path = path + "\\";
        if(bytes!=null && bytes.length>0){
            OutputStream out = null;
            // BufferedImage img = ImageIO.read(new ByteArrayInputStream(bytes));
            File l = new  File(path);

            out = new BufferedOutputStream(new FileOutputStream(path));
            out.write(bytes);

            if (out != null) {
                out.close();
            }
        }   
    }

2 个答案:

答案 0 :(得分:1)

因为你好像在试图打开并阅读目录。您所说的文件没有指定任何扩展名,因此java将其作为目录。在打开之前使用isFile()方法检查文件。您可以使用listFiles()方法获取目录的文件。

答案 1 :(得分:0)

请确保path = path + "\\";是正确的路径。如果有目录,程序将显示Access is denied。您应该在打开文件之前添加一些检查,就像if (l.isDirectory())

一样