簡體   English   中英

Java:將文件權限設置為多個用戶

[英]Java: Set file permissions to several users

對於我正在編寫的一個小應用程序,有一個file.xml是數據庫。

使用以下命令創建file.xml時:

File xmlDB = new File(newYear + ".xml");
PrintWriter writer = new PrintWriter(newYear+".xml", "UTF-8");
String header = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?><economato> </economato>";
writer.println(header);

然后我可以設置權限

xmlDB.setwReadable()
XML.setWritable()

但是我了解到,通過這些原語,我可以為所有人的所有者設置權限。 相反,我如何為2或3個人設置這些權限(給定他們用來登錄服務器的用戶名?)?

對於Linux,我需要知道這一點,但對於Windows,則需要整體了解。 我應該用嗎

Runtime.getRuntime().exec("Windows prompt command");

要做到這一點?

謝謝

您可以將權限添加到組,然后將所需的那些用戶添加到該組

   //using PosixFilePermission to set file permissions 777
    Set<PosixFilePermission> perms = new HashSet<PosixFilePermission>();
    //add owners permission
    perms.add(PosixFilePermission.OWNER_READ);
    perms.add(PosixFilePermission.OWNER_WRITE);
    perms.add(PosixFilePermission.OWNER_EXECUTE);
    //add group permissions
    perms.add(PosixFilePermission.GROUP_READ);
    perms.add(PosixFilePermission.GROUP_WRITE);
    perms.add(PosixFilePermission.GROUP_EXECUTE);
    //add others permissions
    perms.add(PosixFilePermission.OTHERS_READ);
    perms.add(PosixFilePermission.OTHERS_WRITE);
    perms.add(PosixFilePermission.OTHERS_EXECUTE);

    Files.setPosixFilePermissions(Paths.get("/Users/pankaj/run.sh"), perms);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM