java中字节流的分类都有哪些_Java------字节流和字符流(I)

2023-10-30

字节流:读写字节文件,通常使用字节流,如:二进制文件,.jpg,.mp3,.avi,.exe,.com,.dll

windows平台的执行文件:.exe,.com,.dll

字符流:读写字符文件,通常使用字符流,如:.txt,.java,.css,.doc,.html,*.xml

字节流可以读写任意文件。字符流不能读写字节文件。

字节流的概念

传输的数据单位是字节,也意味着字节流能够处理任何一种文件

字节流的组成:InputStream/OutputStream

以 Stream 结尾的是字节流,字节流只能处理字节流

以 Writer/Reader 结尾的是字符流,字符流既可以处理字符流,也可以处理字节流

字节流在操作时本身不会用到缓冲区(内存),是文件本身直接操作的,

而字符流在操作时使用了缓冲区,通过缓冲区再操作文件

字符流操作时使用了缓冲区,而 在关闭字符流时会强制性地将缓冲区中的内容进行输出,

但是如果程序没有关闭,则缓冲区中的内容是无法输出的,所以得出结论:

字符流使用了缓冲区,而字节流没有使用缓冲区。

流分类:

1.Java的字节流

InputStream是所有字节输入流的祖先,而 OutputStream是所有字节输出流的祖先。

2.Java的字符流

Reader是所有读取字符串输入流的祖先,而writer是所有输出字符串的祖先。

InputStream,OutputStream,Reader,writer都是抽象类。所以不能直接new

字节流是最基本的,所有的InputStream和OutputStream的子类都是,主要用在处理二进制数据,它是按字节来处理的,但实际中很多的数据是文本,又提出了字符流的概念,它是按虚拟机的encode来处理,也就是要进行字符集的转化。这两个之间通过 InputStreamReader,OutputStreamWriter来关联,实际上是通过byte[]和String来关联。在实际开发中出现的汉字问题实际上都是在字符流和字节流之间转化不统一而造成的。

在从字节流转化为字符流时,实际上就是byte[]转化为String时,

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java中字节流的分类都有哪些_Java------字节流和字符流(I) 的相关文章

随机推荐

  • eclipse project文件夹下 删除不掉文件夹或者文件的解决的方法

    对于新手来说 有时操作失误就会导致eclipse文件夹中的某些子文件夹或者文件无法删除 这种原因是 在project文件夹中 不是eclipse上显示的 是真实的物理磁盘上的 这个文件夹或者文件已经不存在了 所以在删除的时候报错 无法删除
  • python自动化办公——定制化将电子签名批量签写到PDF文件

    python自动化办公 定制化将电子签名批量签写到PDF文件 文章目录 python自动化办公 定制化将电子签名批量签写到PDF文件 1 安装依赖 2 需求分析 3 代码 1 安装依赖 首先需要下载所需要的库 pip install pdf
  • 树莓派CM4基于emmc安装Ubuntu系统及初始配置

    文章目录 安装前准备 CM4安装系统 参考资料 安装前准备 在树莓派官方手册CM板卡介绍中说明 开发板的供电电压为DC12V或5V 为了保证开发板USB接口的正常使用 开发板的供电电流应 1 2A CM4安装系统 补充说明 Ubuntu18
  • DCIC-赛题二赛后总结

    文章目录 赛题说明 赛题名称 赛题说明 任务解析 数据清单 算法分析 1 1 巡游车日均空驶率计算 1 2 网约车空驶率部分代码分析 1 3 结果与结果分析 2 1 订单运距与时长计算 2 2 结果与结果分析 3 1 上下客地点可视化实现
  • python 字符串 大小写转换 以及一系列字符串操作技巧

    总结 capitalize 首字母大写 其余全部小写 upper 全转换成大写 lower 全转换成小写 title 标题首字大写 如 i love python title I Love Python 转换大小写 和其他语言一样 Pyth
  • Anaconda--Python环境管理

    Anaconda是Python的一个开源发行版本 主要面向科学计算 预装了丰富强大的库 使用Anaconda可以轻松管理多个版本的Python环境 Download https www anaconda com download Anaco
  • 堆的节点总数n和叶结点数目的关系 (CLRS习题 6.1-7)

    来自算法导论 CLRS的一个习题 Chapter 6 Heap Sort Exercise6 1 7 Show that with the array representationfor storing an n element heap
  • TESTNG框架

    TestNG是一个设计用来简化广泛的测试需求的测试框架 从单元测试 隔离测试一个类 到集成测试 测试由有多个类多个包甚至多个外部框架组成的整个系统 例如运用服务器 编写一个测试的过程有三个典型步骤 编写测试的 业务逻辑并在代码中插入Test
  • Typora 含多图片笔记快速上传到 CSDN 上发表

    Typora 含多图片笔记快速上传到 CSDN 上发表 适用场景 解决方案 具体步骤 适用场景 在 Typora 里面记笔记 上传的图片是本地保存的 如果要将笔记上传到 CSDN 上发表的话 图片得一张一张地拖拽非常麻烦 解决方案 Typo
  • TypeScript快速上手

    简介 参考文档 https ts xcatliu com 阮一峰typescript入门教程 TypeScript JavaScript With Syntax For Types typescriptlang org typescript
  • Ubuntu上搭建RK3588开发环境

    目标 Ubuntu上搭建RK3588开发环境 并成功运行 测试其芯片性能 可参考连接 https wiki t firefly com zh CN Core 3588J started html x 16号之前完成打包Ubuntu系统 差一
  • String[] 插入元素数据

    String pIdStr request getParameter ids String projectIdList pIdStr split List
  • Mybatis报错mapkey is required解决方案

    Mybatis报错mapkey is required解决方案 问题背景 解决方案 总结 Lyric 几天都没有喝水也能活 问题背景 因为使用了mybatisX插件 导致检查报错mapkey is required 解决方案 1 关闭myb
  • vue中下载文件使用file-saver,文件错误excel无法打开

    最近使用到了file saver下载文件 通过axios调接口拿文件数据 再通过file saver下载文件 但就在我成功下载文件并打开时 提示这个信息 主要的原因就是没有设置响应的文件流类型为 blob 加上后就可以打开了
  • FreeRTOS config开始的宏

    FreeRTOSConfig h系统配置文件中可以自定义 FreeRTOS h中定义默认值 configAPPLICATION ALLOCATED HEAP 默认情况下FreeRTOS的堆内存是由编译器来分配的 将宏configAPPLIC
  • 基于flask做的用户注册界面一(无后台接收,无数据库)

    1 init py文件界面 再此声明 完全是个人问题 一般 init py不能这样用 init py文件 from flask import Flask app Flask name debug True import apps view
  • springboot(2.1.1.RELEASE)启用jdk动态代理(默认启用cglib)的方法

    大前提 该类必须实现了某个接口 其他类使用注解引用该类时 必须基于其实现的接口类型注入 否则注入不成功 方式1 启动类上注解如下设置 SpringBootApplication exclude AopAutoConfiguration cl
  • 两幅有偏差的影像同坐标的地物不一定一样

    第一幅图上 如果经纬度100 100上是只狗 那么另外一个图上同经纬度不一定有狗了 是有偏差的
  • centos 6.5 安装JDK 7

    安装说明 系统环境 centos 6 3 安装方式 rpm安装 软件 jdk 7 linux x64 rpm 检验系统原版本 root admin java version 进一步查看JDK信息 root admin rpm qa grep
  • java中字节流的分类都有哪些_Java------字节流和字符流(I)

    字节流 读写字节文件 通常使用字节流 如 二进制文件 jpg mp3 avi exe com dll windows平台的执行文件 exe com dll 字符流 读写字符文件 通常使用字符流 如 txt java css doc html