在 java 中,我使用以下代码创建一个文件:
File dirName = new File("/var/www/html/nyk/app/webroot/MusicDB/music.db");
但是该文件在其顶部创建了一个“锁定符号”,表示权限受限。我可以使用终端从终端手动更改此文件的权限cgmod -R 777 filename
。但是我在同一个程序中使用了另一个代码,它将创建的文件复制到另一个目的地。由于权限受限,无法复制文件。
如何创建文件以首先消除受限权限问题?
你试过这个吗?
myFile.setReadable(true);
myFile.setWritable(true);
您可以umask
在启动应用程序之前在 Java 之外使用。
umask 000
或使用
dirName.setReadable(true);
dirName.setWritable(true);
您可以使用File.setReadable()
,File.setWritable()
方法!您可以根据需要授予权限或撤销权限!目前在您的情况下,您需要提供true
授予权限!
或者一个肮脏的解决方法是
Runtime.getRuntime().exec("chmod 777 file")