文章目录

  • 一、Response响应字符数据(这个流不需要关闭)
    • 1.1 通过对象获取字符输出流
    • 1.2 通过字符输出流输出数据
    • 1.3 问题:输出中文乱码
      • 1.3.1 setHeader
      • 1.3.2 setContentType
  • 二、Response响应字节数据
    • 2.1 通过Response对象获取字节输出流
      • 2.1.1 读取文件
      • 2.1.2 获取response字节输出流
    • 2.2 字节流输出
      • 2.2.1 方法一 :将一个一个的字节输出
      • 2.2.2 方法二 : 在pom.xml文件中添加 commons-io
    • 2.3 关闭字节流

提示:在Maven Web项目下,创建的Servlet中的doGet方法中演示。

一、Response响应字符数据(这个流不需要关闭)

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

1.1 通过对象获取字符输出流

// 示例代码如下:
// response 为doGet方法中获取来的response对象PrintWrite out = response.getWrite();

1.2 通过字符输出流输出数据

out.write(" I got");

1.3 问题:输出中文乱码

设置返回客户端的数据类型,在通过response对象获取字符输出流的前面加上(两种方法):

1.3.1 setHeader

response.setHeader("content-type,text/html");

1.3.2 setContentType

response.setContentType("text/html;charset=utf-8");

完整代码展示:

    @Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.setContentType("text/html;charset=utf-8");PrintWriter out = response.getWriter();out.write("你好");out.write("<h1>hello</h1>");}

浏览器运行结果:

二、Response响应字节数据

可以用来输出图片等

2.1 通过Response对象获取字节输出流

2.1.1 读取文件

输入流

// 这里以绝对路径为例子,输出abc.jpg
FileInputStream files = new FileInputStream("e://code.jpg");

2.1.2 获取response字节输出流

输出流

ServletOutputStream os = response.getOutputStream();

2.2 字节流输出

2.2.1 方法一 :将一个一个的字节输出

byte[] by = new byte[1024];
int len = 0;
while((len = files.read(by)) != -1) {os.write(by,0,len)
}

2.2.2 方法二 : 在pom.xml文件中添加 commons-io

pom.xml:

<dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.6</version>
</dependency>

添加后调用相对应的方法:

IOUtils.copy(files,os);

2.3 关闭字节流

files.close();

Response响应字符流和字节流数据相关推荐

  1. Response响应字符数据(解决乱码问题),字符数据(文件输出)

    Response响应字符数据(解决乱码问题),字符数据(文件输出) Request:使用request对象来获取请求数据 Response:使用response对象来设置响应数据 Reponse的继承 ...

  2. Response设置响应数据、Response完成重定向(对比 forword)、路径问题、Response响应字符数据、Response响应字节数据

    文章目录 Response Response 设置响应数据功能介绍 Response 完成重定向 与请求转发(forword)对比 路径问题 Response 响应字符数据 Response 响应字节 ...

  3. 笔记整理5----Java语言高级(五--完结)21 字符流与字节流+22 多线程+23 网络编程

    21 字符流与字节流+22 多线程+23 网络编程 第10天 IO流 今日内容介绍  标准输入流 & 转换流 & 打印流  对象操作流  Properties集合 第1章标准输入 ...

  4. java 字符流与字节流区别_JAVA 字符流与字节流的区别

    Java 流在处理上分为字符流和字节流.字符流处理的单元为 2 个字节的 Unicode 字符,分别操作字符.字符数组或字符串,而字节流处理单元为 1 个字节,操作字节和字节数组. Java 内用 U ...

  5. java中字符流 字节流_理解Java中字符流与字节流的区别

    1. 什么是流 Java中的流是对字节序列的抽象,我们可以想象有一个水管,只不过现在流动在水管中的不再是水,而是字节序列.和水流一样,Java中的流也具有一个"流动的方向",通常可 ...

  6. java字符流和字节流的区别_java字符流与字节流的区别是什么

    java中字符流与字节流的区别: 1.字节流操作的基本单元为字节:字符流操作的基本单元为Unicode码元. 2.字节流默认不使用缓冲区:字符流使用缓冲区. 3.字节流通常用于处理二进制数据,实际上它 ...

  7. java binaryreader_Java字符流与字节流区别与用法分析

    本文实例讲述了Java字符流与字节流区别与用法.分享给大家供大家参考,具体如下: 字节流与字符流主要的区别是他们的的处理方式 流分类: 1.Java的字节流 InputStream是所有字节输入流的祖 ...

  8. 字符流何用, 字节流呢

    java中字符流用于读取文本, 而字节流一般用于读取类似视频,音频的非文本文件, 对吗? Java中字符流通常用于读取文本文件,而字节流通常用于读取非文本文件,如视频.音频.图像等二进制文件. 字符流 ...

  9. JAVA I/O流 字符流和字节流、节点流和处理流(包装流、过滤流)、缓冲流

    JAVA IO流 一.相关概念 1.分类: 区别和联系 代码 嵌套的IO流关闭的问题 一.相关概念 I/O流: Input/Output Stream,文件输入输出流. 1.分类: 输入流 和 输出流 ...

最新文章

  1. 您需要了解有关Angular中的ng-template,ng-content,ng-container和* ngTemplateOutlet的所有信息...
  2. VS2010 SP1 Beta与VisualSVN的冲突引起VS2010关闭时重启
  3. 最近项目重构的一些感想
  4. 自动生成Hibernate框架结构
  5. java代码如何降低重复率_影响网站跳出率的主要因素及如何降低网站跳出率?...
  6. $(ajax) jquery+ajax 交互
  7. 能源36号文解读_中国能源报
  8. 零基础学Python(第十六章 函数·重点)
  9. java中的values函数_巧用valueat函数(快逸免费版)
  10. 算法(12)-leetcode-explore-learn-数据结构-双链表的设计
  11. 2018 年,React 将独占web前端框架鳌头?
  12. MongoDB高级——安全
  13. java八种包装_Java的八种基本数据类型及其包装类
  14. utilities——C++常用仿函数(二)
  15. 「专题训练」Collecting Bugs(POJ-2096)
  16. 可以把视频从竖屏转换成横屏吗
  17. mysql离散查询_MySQL多表查询与子查询
  18. 远程springmvc ajax请求乱码,网络编程springMVC解决ajax请求乱码的三种方法
  19. php doctrine 使用,php - 使用doctrine2删除级联
  20. STM32应用(七)JY901九轴姿态模块(串口DMA空闲中断和I2C通信)

热门文章

  1. 第11周 oj for循环画三角形
  2. 海康大华宇视监控插件-vue
  3. 使用清华源安装ros2 foxy
  4. Firefox威武 尚译威武!
  5. python新浪微博数据分析_python数据分析微博热门
  6. [虚拟机_1]-Windows 8 往上的系统都自带一个 Hyper-V 虚拟机
  7. nodejs全局变量设置设置
  8. python历年来经典项目实例-你不知道的Python语言的经典五大案例
  9. jenkins安装笔记(一)
  10. 英国招募***建网络部队防控网络冷战到来