1、PrintWriter可以作为一个过滤流,封装Writer实例
PrintWriter,有一系列的print方法和println方法,有缓冲区功能,需要及时关闭或者flush,可以写入基本类型(转换为字符串)、字符串和对象(使用toString方法)
2、PrintWriter也可以作为节点流的方式使用,构造器中可以接受File对象或者文件名,不能指定编码方式,编码方式采用系统默认的编码方式
3、PrintWriter可以进行桥转换,接受一个OutputStream对象,不能指定编码方式,编码方式采用系统默认的编码方式
import java.io.*
public class TestWriter
{
public static void main(String args[]){
//PrintWriter做过滤流+FileWriter
//doFilter1()
//2、PrintWriter做过滤流+OutputStreamWriter
//doFilter2()
//3、PrintWriter可以作为节点流
//doNode()
//4、PrintWriter可以进行桥转换,接受一个OutputStream对象
doBridge()
}
//1、PrintWriter做过滤流+FileWriter
public static void doFilter1(){
FileWriter fw = null
PrintWriter pw = null
try{
//创建字符流
fw = new FileWriter(“newPoem.txt”)
//封装字符流的过滤流
pw = new PrintWriter(fw)
//文件写入
pw.println(“阳关万里道,”)
pw.println(“不见一人归。”)
pw.println(“惟有河边雁,”)
pw.println(“秋来南向飞。”)
}catch(IOException e){
e.printStackTrace()
}finally{
//关闭外层流
if(pw != null){
pw.close()
}
}
}
//2、PrintWriter做过滤流+OutputStreamWriter
public static void doFilter2(){
FileOutputStream fos = null
OutputStreamWriter osw = null
PrintWriter pw = null
try
{
//创建字节流
fos = new FileOutputStream(“newPoem.txt”)
//通过桥连接,把绝明字节流转变为字符流,并指定编码格式
osw = new OutputStreamWriter(fos,”UTF-8″)//写入文件时指定编码格式
//封装字符流的过滤流
pw = new PrintWriter(osw)
//文件写入
pw.println(“阳关万里道,”)
pw.println(“不见一人归。”)
pw.println(“惟有河边雁,”)
pw.println(“秋来南向飞。”)
}
catch (FileNotFoundException e)
{
e.printStackTrace()
}catch(UnsupportedEncodingException e){
e.printStackTrace()
}finally{
//关闭外层流
if(pw != null){
pw.close()
}
}
}
//3、PrintWriter可以作为节点流,构造器首碧中可以接受File对象或者文件名
public static void doNode(){
PrintWriter pw = null
try
{
//直接创建字符节点流,并输出
pw = new PrintWriter(“newPoem.txt”)
pw.println(“阳关万里道,”)
pw.println(“不见一人归。”)
pw.println(“惟有河边雁,”)
pw.println(“秋来南向飞。”)
}
catch (FileNotFoundException e)
{
e.printStackTrace()
}finally{
//关闭外层流
if(pw != null){
pw.close()
}
}
}
//4、PrintWriter可以进行桥转换,接受一个outputStream对象,不能指定编码方式
public static void doBridge(){
FileOutputStream fos = null
PrintWriter pw = null
try
{
fos = new FileOutputStream(“newPoem.txt”)
pw = new PrintWriter(fos)
//文件写入
pw.println(“阳关万里道,”)
pw.println(“不见一人归。”)
pw.println(“惟有河边雁,”)
pw.println(“秋来南向飞。”)
}
catch (FileNotFoundException e)
{
e.printStackTrace()
}finally{
//关闭外层流
if(pw != null){
pw.close()
}
}
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)