1. JDK1.6中提供了java.io.Console类
JDK1.6中提供了java.io.Console 类专用来访问基于字符的控制台设备。你的程序如果要与Windows下的cmd或者Linux下的Terminal交互,就可以用Console类代劳。但我们不总是能得到可用的Console,一个JVM是否有可用的Console依赖于底层平台和JVM如何被调用。如果JVM是在交互式命令行(比如Windows的cmd)中启动的,并且输入输出没有重定向到另外的地方,那么就可以得到一个可用的Console实例。
2. File类增加了如下方法
如下方法获取磁盘使用信息:
- getTotalSpace() - 返回此抽象路径名指定的分区大小。以字节为单位。
- getFreeSpace() - 返回此抽象路径名指定的分区中未分配的字节数。
- getUsableSpace() - 返回此抽象路径名指定的分区上可用于此虚拟机的字节数。若有可能,此方法将检查写权限和其他操作系统限制,因此与 getFreeSpace() 相比,此方法能更准确地估计可实际写入的新数据数。
如下方法获取文件权限:
- setWritable(boolean writable, boolean ownerOnly) 和 setWritable(boolean writable) - 设置此抽象路径名的所有者或所有用户的写权限。
- setReadable(boolean readable, boolean ownerOnly) 和 setReadable(boolean readable) - 设置此抽象路径名的所有者或所有用户的读权限。
- setExecutable(boolean executable, boolean ownerOnly) 和 setExecutable(boolean executable) - 设置此抽象路径名的所有者或所有用户的执行权限。
- canExecute() - 测试应用程序是否可以执行此抽象路径名表示的文件。
3. IOException类增加构造函数
IOException支持异常链通过新的构造函数:IOException(String, Throwable) 和IOException(Throwable)。
4. File.isFile()方法的行为发生变化
Windows环境下对保留设备名如: CON, NUL, AUX, LPT, 等等,永远返回false。