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

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

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

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