![Windows 上的只读文件夹](https://linux22.com/image/1453826/Windows%20%E4%B8%8A%E7%9A%84%E5%8F%AA%E8%AF%BB%E6%96%87%E4%BB%B6%E5%A4%B9.png)
我正在尝试使用 Java 将文件夹标记为只读。函数调用为 setWritable(false)。但是,这并不禁止在该文件夹中创建新文件。我读过很多关于此内容的文章,结果发现 Windows 不考虑文件夹上的只读标志。是否有任何解决方案可用于将文件夹标记为只读,就像在 Linux 上一样?[我已经在 stackoverflow 上问过这个问题,一位用户建议以超级用户身份尝试。]
答案1
我建议您首先构建一个应用程序,并考虑使用您的应用程序可能造成的有害操作。
然后考虑到编程语言(在本例中为 java)的限制,拒绝那些直接通过应用程序的服务器部分与系统交互的方法。
了解某些技术 - 例如展示不受读保护的属性。
我认为,在这种情况下,设计很好 -
- 虚拟文件系统将保护操作系统的文件系统免受直接用户干预
- 服务器命令,例如基于 SOAP,将由服务器批准发送部分团队
- 使用 SOAP 服务器执行命令的客户端操作系统的语言
这是一个最小的骨架应用程序。然后您可以添加虚拟文件系统索引和其他有用的功能。
是的,您可以直接使用 JavaFX 或 JNI 解决这些问题。
但从安全角度来说这是一种危险的方式。
对于该应用程序的进一步开发来说,这是一条死路。
除其他事项外,您可以决定使用 JNI,但是对于系统编程语言或 .Net 应用程序语言或管理脚本 java 来说,简单的事情可能会非常复杂。
这给我们的设计过程带来了不必要的复杂化。