java以流的形式操纵IO,又将流分为两种:字节流与字符流,对JavaIO流操作不清楚的可以参考

Java IO 2-字节流与字符流

那字节流与字符流之间又有什么区别呢

区别

字节流用于操作文件数据,网络传输等场景,而字符流适用于与字符串,中文有关的内容处理,因为Writer/Reader两个抽象类对字符的支持比较好。

除了这些,字符输出流写数据时是先将数据写入缓冲区,待字符输出流关闭后再写入到文件中,而字节输出流是直接写入到文件中,通过下面的例子,我们可以清楚的看到这一点。

import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.Reader;
import java.io.Writer;/*** 测试路径:E:\IO\demo.txt*/public class Test {public static void main(String[] args) throws Exception {// 测试:字符输出与字节输出区别File file = new File("E:\\IO\\demo.txt");// 父目录不存在,创建if(!file.getParentFile().exists()) {file.getParentFile().mkdirs();}String msg = "爱生活爱Java";Writer out = new FileWriter(file);out.write(msg);// 不关闭字符输出流// out.close()// 强制清空缓冲区// out.flush();}
}

运行程序前,测试文件夹:

没有关闭字符输出流:

使用强制清空缓冲区之后:

以上就是字符字节流之间最大的区别,由于学识所限,以后还会继续更新。

Java IO 3-字节流与字符流的区别相关推荐

  1. 【Java基础】吃透Java IO:字节流、字符流、缓冲流

    文章目录 [Java基础-3]吃透Java IO:字节流.字符流.缓冲流 一.初识java IO 1.1 IO流分类 1.1.1 输入流与输出流 1.1.2 字节流与字符流 1.1.3 节点流和处理流 ...

  2. java byte char io流_吃透Java IO:字节流、字符流、缓冲流

    前言有人曾问fastjson的作者(阿里技术专家高铁):"你开发fastjson,没得到什么好处,反而挨了骂背了锅,这种事情你为什么要做呢?" 高铁答道:"因为热爱本身, ...

  3. java IO之字节流和字符流-Reader和Writer以及实现文件复制拷贝

    接上一篇的字节流,以下主要介绍字符流.字符流和字节流的差别以及文件复制拷贝.在程序中一个字符等于两个字节.而一个汉字占俩个字节(一般有限面试会问:一个char是否能存下一个汉字,答案当然是能了,一个c ...

  4. 吃透Java IO:字节流、字符流、缓冲流

    IO流是Java中的一个重要构成部分,也是我们经常打交道的. 下面几个问题(问题还会继续补充),如果你能对答如流,那么恭喜你,IO知识掌握得很好,可以立即关闭文章.反之,你可以在后面得文章中寻找答案. ...

  5. java字符流字节流场景_【120期】Java IO:字节流、字符流、缓冲流

    IO流是Java中的一个重要构成部分,也是我们经常打交道的.这篇关于Java IO的博文干货满满,堪称全网前三(请轻喷!) 下面几个问题(问题还会继续补充),如果你能对答如流,那么恭喜你,IO知识掌握 ...

  6. fileoutputstream 字节乱码_吃透Java IO:字节流、字符流、缓冲流

    前言 有人曾问fastjson的作者(阿里技术专家高铁):"你开发fastjson,没得到什么好处,反而挨了骂背了锅,这种事情你为什么要做呢?" 高铁答道:"因为热爱本身 ...

  7. java字符流实际上也是字节,[Java教程]Java字节流与字符流的区别

    [Java教程]Java字节流与字符流的区别 0 2017-05-22 12:00:42 字节流与和字符流的使用非常相似,两者除了操作代码上的不同之外,是否还有其他的不同呢? 实际上字节流在操作时本身 ...

  8. java字节流转字符串_字节流与字符流的区别及相互转换

    先来看一下流的概念: 在程序中所有的数据都是以流的方式进行传输或保存的,程序需要数据的时候要使用输入流读取数据,而当程序需要将一些数据保存起来的时候,就要使用输出流完成. 程序中的输入输出都是以流的形 ...

  9. IO流总结——字节流与字符流的区别

    字节流与字符流的区别: 字节流与字符流的区别: 所有文件的储存是都是字节(byte)的储存,在磁盘上保留的并不是文件的字符而是先把字符编码成字节,再储存这些字节到磁盘.在读取文件(特别是文本文件)时, ...

最新文章

  1. MS SQLSERVER通用存储过程分页
  2. redis 服务器/客户端安装与配置
  3. python标准库的基本使用
  4. centos查看网关地址
  5. 从WildFly 9(子系统)中运行OkHttpClient
  6. 计算机工程师分级_这些是每个计算机工程师都应该知道的数字
  7. 搜狐视频怎么下载到电脑
  8. MySQL之GROUP BY用法误解
  9. 多目标跟踪评价标准(MOT)
  10. 二级路由dhcp关闭连不上wifi_如何做到让家里WiFi真正全覆盖的几个布线方案
  11. 基于STM32F1的HMC5883L电子罗盘驱动——妈妈从此再也不担心我迷路了
  12. Kubuntu 安装fcitx 5
  13. vs2013配置CUDA .cu文件
  14. 关于自己看百度修改c盘下的用户名,更改了注册表里的profilelist文件,重启后恢复原始桌面并提示注销问题与解决方案。
  15. win10亮度调节变为灰色无法调节
  16. 基于拦截器实现防表单重复提交
  17. 使用AMCap调整相机参数
  18. 【java工具方法】十六进制字符串转字符串
  19. PAT甲级1009 Product of Polynomials (25分)
  20. 视频监控网络使用PON网络传输解决方案相关问题解答

热门文章

  1. Linux云主机安全入侵排查步骤
  2. spring boot校园管理系统 毕业设计源码021104
  3. 19 | 总结(一):微服务设计和拆分要坚持哪些原则
  4. 直连获取串口服务器ip,能够进行串口modbusRTU和以太网modbus-TCP协议转换的串口服务器,并提供好用的MODBUS调试工具-专业自动化论坛-中国工控网论坛...
  5. 点击按钮的动画,点击出现阴影,松开后逐渐扩散到整个按钮
  6. 数据结构——表达式求值
  7. opendaylight源码分析
  8. Linux高效使用的七个好习惯
  9. matlab怎么输出加粗的字,matlab boxplot 加粗
  10. lightroom_如何在Lightroom中创建新目录