草不谢荣于春风, 木不怨落于秋天。

Java IO操作——打印流(PrintStream、PrintWriter)的使用

 学习目标

掌握打印流的操作

掌握格式化输出

打印流

在整个IO包中,打印流是输出信息做方便的类,主要包含字节打印流(PrintStream)和字符打印流(PrintWriter)。打印流提供了非常方便的打印功能,可以打印任何的数据类型,例如:小数、整数、字符串等等。

回顾:之前在打印信息的时候需要使用OutputStream,但是这样一来,所有的数据输出的时候会非常的麻烦,String——>byte[],打印流中可以方便的进行输出。

PrintStream类的常用方法

1、public PrintStream(File file) throws FileNotFoundException 构造方法 通过一个File对象实例化PrintStream类

2、public PrintStream(OutputStream  out)  构造方法 接收OutputStream对象,实例化PrintStream类

3、public PrintStream printf(Locale l, String format, Object ...arg) 普通方法 根据指定的Locale进行格式化输出

4、public PrintStream printf(String format,Object ... arg) 普通方法 根据本地环境进行格式化输出

5、public void print(boolean b) 普通方法 此方法被重载很多次,输出任意数据

6、public void println(boolean b) 普通方法 此方法被重载很多次,输出任意数据后换行

在这个类中国定义了很多print()方法或println()方法。System.out.println,此方法可以打印任意的数据类型。

构造方法:Public PrintStream(OutputStream out)  —>指定输出位置,此方法可以接收OutputStream的子类。

打印流的好处:

在PrintStream中定义的构造方法中可以清楚的发现有一个构造方法可以直接接收OutputStream类的实例,这是因为与OutputStream相比起来,PrintStream可以更加方便的输出数据,这就好比将OutputStream重新包装了一下,使之输出更加方便。


使用PrintStream输出信息:

import java.io.* ;
public class PrintDemo01{
	public static void main(String arg[]) throws Exception{
		PrintStream ps = null ;		// 声明打印流对象
		// 如果现在是使用FileOuputStream实例化,意味着所有的输出是向文件之中
		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() ;
	}
};

格式化输出

在JDK1.5之后,JAVA又对PrintStream类进行了扩充,增加了格式化的输出方式,直接使用printf()方法就可以完成操作,但是在进行格式化输出的时候需要指定其输出的数据类型。

import java.io.* ;
public class PrintDemo02{
	public static void main(String arg[]) throws Exception{
		PrintStream ps = null ;		// 声明打印流对象
		// 如果现在是使用FileOuputStream实例化,意味着所有的输出是向文件之中
		ps = new PrintStream(new FileOutputStream(new File("d:" + File.separator + "test.txt"))) ;
		String name = "刘勋" ;	// 定义字符串
		int age = 23 ;				// 定义整数
		float score = 990.356f ;	// 定义小数
		char sex = 'M' ;			// 定义字符
		ps.printf("姓名:%s;年龄:%d;成绩:%f;性别:%c",name,age,score,sex) ;
		ps.close() ;
	}
};

其实还可以采取更简单的输出方式, 即全部使用 %s 代替

简化输出

import java.io.* ;
public class PrintDemo03{
	public static void main(String arg[]) throws Exception{
		PrintStream ps = null ;		// 声明打印流对象
		// 如果现在是使用FileOuputStream实例化,意味着所有的输出是向文件之中
		ps = new PrintStream(new FileOutputStream(new File("d:" + File.separator + "test.txt"))) ;
		String name = "刘勋" ;	// 定义字符串
		int age = 23 ;				// 定义整数
		float score = 990.356f ;	// 定义小数
		char sex = 'M' ;			// 定义字符
		ps.printf("姓名:%s;年龄:%s;成绩:%s;性别:%s",name,age,score,sex) ;
		ps.close() ;
	}
};

总结:
1、PrintStream可以方便的完成输出的功能
2、在以后的输出中基本使用PrintStream完成,因为很方便
3、PrintStream属于装饰设计模式


阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013087513/article/details/51981306
个人分类: JAVA—基础知识
所属专栏: Java基础
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

Java IO操作——打印流(PrintStream、PrintWriter)的使用

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭