OutputStream与PrintWriter的使用与区别

来源:互联网 发布:伟福软件 编辑:程序博客网 时间:2024/05/23 19:19

1.OutputStream

使用步骤:

  1. 获取输出流
  2. 设置中文
  3. 将字符串转换成字节数组
  4. 调用outputStream.write()

这里只贴出doGet方法的内容:

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {        //获取OutputStream输出流        OutputStream outputStream = response.getOutputStream();        //设置中文         response.setHeader("content-type", "text/html;charset=UTF-8");         String data = "你好,这里是通过OutputStream的方式向网页输出内容";        //将字符转换成字节数组,并且指定UTF-8编码         byte[] dataByteArr = data.getBytes("UTF-8");        //  输出         outputStream.write(dataByteArr);    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

这里写图片描述

2.PrintWriter

使用步骤:

  1. 设置文档类型和编码方式
  2. 获取getWriter()
  3. 输出

也是只贴出doGet方法的内容:

// 设置响应内容类型与编码方式response.setContentType("text/html;charset=UTF-8");PrintWriter out = response.getWriter();out.println("你好,这里是通过PrintWriter的方式向网页输出内容");
  • 1
  • 2
  • 3
  • 4

这里写图片描述

3.总结

OutputStream是以字节的方式输出,PrintWriter是以字符的方式输出。 

类似字节流与字符流的差别


附:写文件最佳组合 
PrintWriter out = new PrintWriter( 
new BufferedWriter( 
new FileWriter(filename))) 
PrintWriter 提供print系方法 
BufferedWriter 提供缓冲,用以加速 
FileWriter 用于写文件