gpt4 book ai didi

java - 使用java创建不可删除的文件并对其进行读/写

转载 作者:行者123 更新时间:2023-12-01 13:09:42 25 4
gpt4 key购买 nike

我想让文件从外部不可删除,并希望使用java从程序对该文件进行读/写操作。

S0,我使用以下代码使用java创建了不可删除的文件:

    Process pcs = Runtime.getRuntime().exec(
"cmd /c start cacls E:\\PJ\\testing2.txt /e /d %username%");

成功了。但是,我无法再对该文件进行读写了。有人帮我做这件事!或者另一种方法来做到这一点。

最佳答案

虽然我不熟悉 cacls 及其具体用途,但简要查看文档表明您拒绝执行命令的用户访问该文件,然后您希望同一用户访问该文件。我建议使用/p 开关为当前用户提供读取和写入文件所需的权限,然后在代码中对该文件执行所需的操作,然后使用 cacls/d 撤销当前用户的权限再次用户。尝试做这样的事情:

 Process pcs = Runtime.getRuntime().exec(
"cmd /c start cacls E:\\PJ\\testing2.txt /e /p %username% : f");

//Logic that manipulates the file here

Process pcs = Runtime.getRuntime().exec(
"cmd /c start cacls E:\\PJ\\testing2.txt /e /d %username%");

请注意,要特别怀疑“: f ”部分,我再说一遍,我对 cacls 不熟悉,但我确实读过 documentation

编辑 - 我还想到这个逻辑只会撤销当前用户的权限,因此该文件不是“不可删除的”。人们可以通过使用不同的用户帐户(例如管理员)来删除该文件。

关于java - 使用java创建不可删除的文件并对其进行读/写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22977978/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com