1、 ZDXY 件教学研部 迈特望科技Java软件工程师培训 JAVA 应用开发详解 第12章:JAVA IO 打印流 迈特望科技软件教学研发部 E-MAIL:lixiaoming9215 高级JAVA软件工程师培训! 本章目标 掌握打印流的操作 掌握格式化输出 E-MAIL:lixiaoming9215 高级JAVA软件工程师培训! 打印流 在整个IO包中,打印流是输出信息最方便的类,主要包含字节打印流( PrintStream)和字符打印流(PrintWriter)。打印流提供了非常方便的打 印功能,可以打印任何的数据类型,例如:小数、整数、字符串等等。 E-MAIL:lixiaoming92
2、15 高级JAVA软件工程师培训! PrintStream类的常用方法 No.方法类型描述 1 public PrintStream(File file) throws FileNotFoundException 构造通过一个File对象实例化PrintStream类 2public PrintStream(OutputStream out)构造接收OutputStream对象,实例化PrintStream类 3 public PrintStream printf(Locale l,String format,Object. args) 普通根据指定的Locale进行格式化输出 4 publi
3、c PrintStream printf(String format,Object. args) 普通根据本地环境格式化输出 5public void print(boolean b)普通此方法被重载很多次,输出任意数据 6public void println(boolean b)普通此方法被重载很多次,输出任意数据后换行 E-MAIL:lixiaoming9215 高级JAVA软件工程师培训! 打印流的好处 在PrintStream中定义的构造方法中可以清楚的发现有一个构造方法可以 直接接收OutputStream类的实例,这是因为与OutputStream相比起来, PrintStrea
4、m可以更加方便的输出数据,这就好比将OutputStream类重新 包装了一下,使之输出更加方便。 E-MAIL:lixiaoming9215 高级JAVA软件工程师培训! 使用PrintStream输出 package org.lxm.demo12.printdemo; import java.io.File; import java.io.FileOutputStream; import java.io.PrintStream; public class PrintDemo01 public static void main(String args) throws Exception /
5、所有异常抛出 PrintStream ps = null; / 此时通过FileOutputStream实例化,意味着所有的输出 是向文件之中打印 ps = new PrintStream(new FileOutputStream(new File(d: + File.separator + test.txt); ps.print(hello ); ps.println(world!); ps.print(1 + 1 = + 2); ps.close() ; E-MAIL:lixiaoming9215 高级JAVA软件工程师培训! 格式化输出 在JDK 1.5之后,JAVA又对PrintStr
6、eam类进行了扩充,增加了格式化的 输出方式,直接使用printf()方法就可以完成操作,但是在进行格式化输出 的时候需要指定其输出的数据类型。 No.字符描述 1%s表示内容为字符串 2%d表示内容为整数 3%f表示内容为小数 4%c表示内容为字符 E-MAIL:lixiaoming9215 高级JAVA软件工程师培训! 格式化输出 package org.lxm.demo12.printdemo; import java.io.File; import java.io.FileOutputStream; import java.io.PrintStream; public class Pr
7、intDemo02 public static void main(String args) throws Exception / 所有异常抛出 PrintStream ps = null; / 此时通过FileOutputStream实例化,意味着所有的输出 是向文件之中打印 ps = new PrintStream(new FileOutputStream(new File(d: + File.separator + test.txt); String name = 李晓明 ; / 定义字符串 int age = 30 ; / 定义整数 float score = 990.356f ;/
8、定义小数 char sex = M ; / 定义字符 / 格式化输出,字符串使用%s、整数使用%d、小数使用%f、 字符使用%c ps.printf(姓名:%s;年龄:%d;成绩:%f;性别:%c, name, age, score, sex); ps.close() ; E-MAIL:lixiaoming9215 高级JAVA软件工程师培训! 简化输出 如果觉得以上表格中的内容难以理解的话,则全部使用“%s”代替也是可以 的,如下所示: ps.printf(姓名:%s;年龄:%s;成绩:%s;性别:%s, name,age,score,sex) ; E-MAIL:lixiaoming9215 高级JAVA软件工程师培训! 下一章内容 SystemIO的支持