对于文本输出,可以使用PrintWriter。这个类拥有以文本格式打印字符串和数字的方法,它还有一个将PrintWriter链接到FileWriter的便捷方法,下面的语句:
等同于:
为了输出到打印写出器,需要使用与使用System.out时相同的print、println和printf方法。你可以用这些方法来打印数字(int、short、long、f?loat、double)、字符、boolean值、字符串和对象。
例如,考虑下面的代码:
它将把下面的字符:
输出到写出器out,之后这些字符将会被转换成字节并最终写入employee.txt中。
println方法在行中添加了对目标系统来说恰当的行结束符(Windows系统是"rn",UNIX系统是"n"),也就是通过调用System.getProperty("line.separator")而获得的字符串。
如果写出器设置为自动冲刷模式,那么只要println被调用,缓冲区中的所有字符都会被发送到它们的目的地(打印写出器总是带缓冲区的)。默认情况下,自动冲刷机制是禁用的,你可以通过使用PrintWriter(Writer out, Boolean autoFlush)来启用或禁用自动冲刷机制:
print方法不抛出异常,你可以调用checkError方法来查看输出流是否出现了某些
错误。