检查文件 setReadOnly、setWritable 和 canWrite 方法的行为更改

此规则将标记 java.io.File setReadOnly() , setWritable(boolean arg) , setWritable(boolean arg, boolean user) , canWrite() .

根据 Java 7 中的 Java SE 7 和 JDK 7 Compatibility 文档,方法 setReadOnly() , setWritable(boolean arg) , setWritable(boolean arg, boolean user) 不再在目录上设置“磁盘操作系统”(DOS) 只读属性。 这些方法将返回 false 在 Microsoft Windows (R) 环境中的目录上调用时。 此外,为保全与 canWrite() 方法,现在 Java 7 中的此方法将始终返回 true 如果在目录上调用。 依照文档:“想要将 Windows 上的目录设为只读的应用程序必须使用新的 API。 特别是 Files.isWritable 方法会考虑有效访问 (由文件的自主访问控制表确定) 以及文件是否位于可写卷上。"

有关更多信息,请参阅 Java 7 API: