java で chmod とか使うための 6 つの方法
http://www.experts-exchange.com/articles/Programming/Languages/Java/File-permissions-with-Java.html
より、
システムコールを使う
String fileName = "/path/to/file", Process proc = Runtime.getRuntime().exec("chmod 755 " + fileName);
JNA を使う。
JDK1.4 以上であれば、上記の代替として JNA が使える。
import com.sun.jna.Library; import com.sun.jna.Native; public class ChmodTest { private static LinkedOSLibrary linkedLibrary = (LinkedOSLibrary ) Native.loadLibrary("c", LinkedOSLibrary.class); public static void main(String[] args) { linkedLibrary.chmod("/path/to/file", 0755); } } interface LinkedOSLibrary extends Library { public int chmod(String path, int mode); }
JTux を使う
Unix コマンドのラッパライブラリとして JTux(Java To UNix)というのがある。ほとんどの Unix コマンドをラップしている。
UFile.chmod("/path/to/file/", 0775);
java.io.File を使う。(ただし、Java6 以上)
Java6 以降であれば、java.io.File に setReadable、setWriteable、setExecutable の3つのメソッドが追加されている。ファイルの rwx だけは変更できるようになっている。これ以外のことは出来ないので、限定的な対応といえる。
失われたライブラリ(The lost library)を使う
Xenon Soft という会社が、Javaunix という JTux に似たライブラリを昔作っていたが、もはや手に入らない。
以上。詳細は上記記事を参照してくださいませ。