PrintWriter是字符类型的打印输出流,继承于Writer,用于向文本输出流打印对象的格式化表示形式。
PrintWriter的主要函数:
PrintWriter(OutputStream out) PrintWriter(OutputStream out, boolean autoFlush) PrintWriter(Writer wr) PrintWriter(Writer wr, boolean autoFlush) PrintWriter(File file) PrintWriter(File file, String csn) PrintWriter(String fileName) PrintWriter(String fileName, String csn) PrintWriter append(char c) PrintWriter append(CharSequence csq, int start, int end) PrintWriter append(CharSequence csq) boolean checkError() void close() void flush() PrintWriter format(Locale l, String format, Object... args) PrintWriter format(String format, Object... args) void print(float fnum) void print(double dnum) void print(String str) void print(Object obj) void print(char ch) void print(char[] charArray) void print(long lnum) void print(int inum) void print(boolean bool) PrintWriter printf(Locale l, String format, Object... args) PrintWriter printf(String format, Object... args) void println() void println(float f) void println(int i) void println(long l) void println(Object obj) void println(char[] chars) void println(String str) void println(char c) void println(double d) void println(boolean b) void write(char[] buf, int offset, int count) void write(int oneChar) void write(char[] buf) void write(String str, int offset, int count) void write(String str)
示例代码:
public class PrintWriterTest { public static void main(String[] args) { // 下面3个函数的作用都是一样:都是将字母“abcde”写入到文件“file.txt”中。 // 任选一个执行即可! testPrintWriterConstrutor1() ; //testPrintWriterConstrutor2() ; //testPrintWriterConstrutor3() ; // 测试write(), print(), println(), printf()等接口。 testPrintWriterAPIS() ; } /** * PrintWriter(OutputStream out) 的测试函数 * * 函数的作用,就是将字母“abcde”写入到文件“file.txt”中 */ private static void testPrintWriterConstrutor1() { final char[] arr={'a', 'b', 'c', 'd', 'e' }; try { // 创建文件“file.txt”的File对象 File file = new File("file.txt"); // 创建文件对应FileOutputStream PrintWriter out = new PrintWriter(new FileOutputStream(file)); // 将“字节数组arr”全部写入到输出流中 out.write(arr); // 关闭输出流 out.close(); } catch (IOException e) { e.printStackTrace(); } } /** * PrintWriter(File file) 的测试函数 * * 函数的作用,就是将字母“abcde”写入到文件“file.txt”中 */ private static void testPrintWriterConstrutor2() { final char[] arr={'a', 'b', 'c', 'd', 'e' }; try { File file = new File("file.txt"); PrintWriter out = new PrintWriter(file); out.write(arr); out.close(); } catch (IOException e) { e.printStackTrace(); } } /** * PrintWriter(String fileName) 的测试函数 * * 函数的作用,就是将字母“abcde”写入到文件“file.txt”中 */ private static void testPrintWriterConstrutor3() { final char[] arr={'a', 'b', 'c', 'd', 'e' }; try { PrintWriter out = new PrintWriter("file.txt"); out.write(arr); out.close(); } catch (IOException e) { e.printStackTrace(); } } /** * 测试write(), print(), println(), printf()等接口。 */private static void testPrintWriterAPIS() { final char[] arr={'a', 'b', 'c', 'd', 'e' }; try { // 创建文件对应FileOutputStream PrintWriter out = new PrintWriter("other.txt"); // 将字符串“hello PrintWriter”+回车符,写入到输出流中 out.println("hello PrintWriter"); // 将0x41写入到输出流中 // 0x41对应ASCII码的字母'A',也就是写入字符'A' out.write(0x41); // 将字符串"65"写入到输出流中。 // out.print(0x41); 等价于 out.write(String.valueOf(0x41)); out.print(0x41); // 将字符'B'追加到输出流中 out.append('B').append("CDEF"); // 将"CDE is 5" + 回车 写入到输出流中 String str = "GHI"; int num = 5; out.printf("%s is %d\n", str, num); out.close(); } catch (IOException e) { e.printStackTrace(); } } }