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

此规则会标记 java.io.File setReadOnly()setWritable(boolean arg)setWritable(boolean arg, boolean user)canWrite()。此规则仅供参考。不存在任何快速修订。

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

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