我的代码写入文件,写入文件时出现拒绝访问错误。
Files.write(path, myString.getBytes());
异常(exception)是休闲
FAILED to write to file.
java.nio.file.AccessDeniedException:
at sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:83)
at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:97)
at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:102)
at sun.nio.fs.WindowsFileSystemProvider.newByteChannel(WindowsFileSystemProvider.java:229)
at java.nio.file.spi.FileSystemProvider.newOutputStream(FileSystemProvider.java:430)
at java.nio.file.Files.newOutputStream(Files.java:170)
at java.nio.file.Files.write(Files.java:3058)
最佳答案
抱歉,这不是一个完整的答案,但不适合对问题的评论。希望对您有所帮助。
来自 https://superuser.com/questions/342276/cannot-save-in-hard-disk-drive-c
Since Windows XP, the root directory of the system partition cannot be written to without administrator privileges. However, for security reasons, Windows Vista and Windows 7 do not grant administrator permissions by default even if logged on as an administrator unless explicitly elevated to this privilege level, which may require that you click through a UAC prompt.
因为您没有尝试写入 C:\
的根目录,所以我认为这不是权限问题,所以可能另一个应用程序锁定了该文件。您是否在其他应用程序(例如记事本)中打开了 .txt
?
检查打开的一种方法 file handles正在使用 Process Explorer .您可以使用 Ctrl+F 并搜索文件的完整路径或名称,Process Explorer 将列出所有具有文件打开句柄的进程。您可以使用 Ctrl+H 查看任何应用程序的所有句柄,甚至可以从此处关闭句柄。注意:如果您在关闭句柄时获得拒绝访问权限,请选择文件 → 显示所有进程的详细信息,然后重试。
关于java - 我该如何修复 Java 7 Files.write 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13393212/