Antes de Java 6, no se admite la actualización de permisos de archivos a nivel de Java. Debe implementar su propio método nativo o llamar al Runtime.exec()
para ejecutar el comando de nivel del sistema operativo como chmod.
A partir de Java 6, puede usar File.setReadable()/File.setWritable()/File.setExecutable()
para establecer los permisos de archivos. Pero no simula el sistema de archivos POSIX que permite establecer permisos para diferentes usuarios. File.setXXX() solo permite establecer permisos para el propietario y todos los demás.
A partir de Java 7, se introduce el permiso de archivo POSIX. Puede configurar permisos de archivos como lo que ha hecho en los sistemas * nix.La sintaxis es la siguiente:
File file = new File("file4.txt");
file.createNewFile();
Set<PosixFilePermission> perms = new HashSet<>();
perms.add(PosixFilePermission.OWNER_READ);
perms.add(PosixFilePermission.OWNER_WRITE);
Files.setPosixFilePermissions(file.toPath(), perms);
Este método sólo se puede utilizar en el sistema de archivos POSIX, esto significa que no se puede llamar en el sistema Windows.
Para obtener más información sobre la gestión de permisos de archivos, le recomendamos que lea this post.
selección de éste, ya que no tengo la capacidad de usa la respuesta de Marty Lamb. –
Realmente no puedo creer que hayan pasado más de seis años desde que comenzaron a trabajar en NIO.2 y todavía no está en un JRE de envío. – clee
Sí, ha pasado mucho tiempo. – erickson