是否可以用Java写入隐藏文件?

时间:2012-11-28 16:10:50

标签: java file io hidden-files

我已经想出如何在Java中创建隐藏文件,现在我需要将大量数据写入文件。我不断收到以下异常:SEVERE: java.io.FileNotFoundException: <filepath>\tmp (Access is denied)

以下是我尝试获得解决方案的两种方法,但我对这两种方法都有相同的例外。注意:在两种情况下,toOverwrite都是隐藏文件。

File fileByteText = new File("./testFile.txt");
File toOverwrite = new File("./tmp");
//Assume toOverwrite is hidden

boolean toReturn = true;
    try {
        byte[] fileByteText = FileUtils.readFileToByteArray(toGetTextFrom);
                    FileUtils.writeByteArrayToFile(toOverwrite, fileByteText,    false);
                    toReturn = false;
                } catch (IOException e) {
                    bam.severe(e);
                    toReturn = true;
                }

使用相同的文件对象接近两个:

try {
                String fileText = FileUtils.readFileToString(toGetTextFrom);
                FileWriter fw = new FileWriter(toOverwrite.getAbsoluteFile());
                BufferedWriter bw = new BufferedWriter(fw);
                bw.write(fileText);
                bw.close();
                toReturn = false;
            } catch (IOException e1) {
                bam.severe(e1);
                toReturn = true;
            }

2 个答案:

答案 0 :(得分:0)

当您尝试写入目录类型的文件时,可能会出现异常。 检查OverWrite.isFile()返回的方法;

如果错,你就不能写。

答案 1 :(得分:-1)

Unix中没有魔力。只需在文件名前添加.。在Windows下,使用Java无法实现这一点。你需要本机命令。愿这适用于NIO2。