字节流和字符流的用法几乎完成全一样,区别在于字节流和字符流所操作的数据单元不同,字节流操作的单元是数据单元是8位的字节,字符流操作的是数据单元为16位的字符。

区别

字节流一般用来处理图像、视频、音频、PPT、Word等类型的文件。字符流一般用于处理纯文本类型的文件
字节流本身没有缓冲区,缓冲字节流相对于字节流,效率提升非常高,字符流本身就带有缓冲区
可以用转换流来进行转换;

举个例子

把a.txt文件中的字节先转换char型数组,再转换成字符流,因为char型可能会溢出的问题。但是会以空格的形式打印出来,所以用trim()方法来去除左右空格

/*** @Author: Adminstrator* @Date:2021* @Description;转换流* InputStreamReader用于将字节输入流转换为字符输入流,* OutputStreamWriter用于将字节输出流转换为字符输出流* 使用转换流可以在一定程度上避免乱码,还可以指定输入输出所使用的字符集*/
public class TestTransfer {public static void main(String[] args) throws IOException {FileInputStream fis=new FileInputStream("a.txt");InputStreamReader isr=new InputStreamReader(fis);char[] c=new char[fis.available()];isr.read(c);FileOutputStream fos=new FileOutputStream("b.txt",true);OutputStreamWriter osw=new OutputStreamWriter(fos);osw.write(new String(c).trim());osw.close();isr.close();fis.close();}
}

字节流和字符流区别(附例子)相关推荐

  1. [转载] 菜鸟举例理解字节流和字符流区别

    参考链接: Java中的字符流与字节流 Character Stream对比Byte Stream 菜鸟举例理解字节流和字符流区别 按照uft8编码方式存储文档 文档存储路径在D盘下 /** * 按照 ...

  2. 菜鸟举例理解字节流和字符流区别

    菜鸟举例理解字节流和字符流区别 按照uft8编码方式存储文档 文档存储路径在D盘下 /** * 按照utf8格式存储文档 */ public static void storeDataByUTF8() ...

  3. 字节流和字符流区别于转换

    一.字节流与字符流的区别 字节流和字符流使用是非常相似的,那么除了操作代码的不同之外,还有哪些不同呢? 字节流在操作的时候本身是不会用到缓冲区(内存)的,是与文件本身直接操作的,而字符流在操作的时候是 ...

  4. Java中的字节流和字符流区别

    字节流 1.字节流在操作的时候不会用到缓冲区(也就是内存) 2.字节流可用于任何类型的对象,包括二进制对象 3.字节流处理单元为1个字节,操作字节和字节数组. 字符流 1.而字符流在操作的时候会用到缓 ...

  5. 字节流和字符流区别与适用场景

    Java 中的字节流处理的最基本单位为 1 个字节,通常用来处理二进制数据.字节流类 InputStream 和 OutputStream 类均为抽象类,代表了基本的输入字节流和输出字节流. Java ...

  6. Java字节流和字符流区别

    1.字节流:直接操作文件本身. 2.字符流:通过缓冲区来操作文件. 所有的文件在硬盘或在传输时都是以字节的方式进行的,包括图片等都是按字节的方式存储的,而字符是只有在内存中才会形成,所以在开发中,字节 ...

  7. java 字节流 区别_java字节流字符流区别-嗨客网

    Java字节流与字符流区别 Java字节流与字符流区别教程 我们在 实际上字节流在对文件操作的时候,不会用到缓冲区(内存),对文件本身直接操作而字符流在对文件操作的时候用到了缓冲区,通过缓冲区来对文件 ...

  8. python字节流和字符流_字符流与字节流

    [一]写在前面 简单总结一下分别用(一直混淆的)字节流or字符流读写文件. [二]字节流 2.1 字节流介绍 程序中的输入输出都是以流的形式保存的(输入流or输出流),流中保存的实际上全都是字节(一个 ...

  9. Java字节流与字符流,断点续传实现分片下载、上传、合并

    文章目录 一:字节流和字符流详解 1.1 流的概念 1.2 流的分类 1.3 字节流,字符流区别与使用场景 1.3.1 区别 1.3.2 使用场景 1.3.3 顶级父类 1.3.4 对比--总结对比字 ...

最新文章

  1. 基于macos的Homebrew常用命令和使用教程(你得看❤️)
  2. python 安装 HTMLtestRunner(转)
  3. C# Winform 未能加载文件或程序集System.Data.SQLite或它的某一个依赖项。试图加载格式不正确的程序...
  4. 零基础小白10分钟用Python搭建小说网站!网友:我可以!
  5. 一篇好文之Android文本软键盘全解
  6. coreldraw sp2精简版 x4_coreldraw x4 sp2 精简版
  7. 接口测试用例设计(详细干货)
  8. python正弦波叠加方波_电赛初探(一)——正弦波、方波、锯齿波转换
  9. phpnow mysql_PHPNOW中如何建立MYSQL数据库连接?
  10. java ee在线聊天室_基于jsp的网络聊天室-JavaEE实现网络聊天室 - java项目源码
  11. 装机不求人,10 分钟完成电脑配置挑选
  12. 墙裂安利!用腾讯云AI语音合成打造自己的第一本有声书
  13. 亲戚(relation)
  14. JS:offsetParent屬性
  15. Tensorflow in partice (lesson three) Course 3 Natural Language Processing in TensorFlow
  16. (五)深入理解蓝牙BLE之“Beacon包格式详解”
  17. Unity3d-英雄联盟选人界面(1-界面构造)
  18. 【现代机器人学】学习笔记十二:轮式移动机器人
  19. 大乐透号码(随机生成)
  20. 《吴忠老年书画作品集》序

热门文章

  1. Google 大佬们为什么要开发 Go 这门新语言?
  2. 【模型压缩】(二)—— 剪枝
  3. leetcode-383. 赎金信
  4. java全局变量放在什么地方_java中的全局变量
  5. 金属表面或很小的体积内抵抗弹性变形
  6. iOS开发笔记-根据银行卡号判断银行名称
  7. 全世android手机,4K+120Hz,这款手机有着全世界最好的屏幕
  8. node服务器的启动及关闭
  9. mysql 新建database_MySQL创建数据库(CREATE DATABASE语句)
  10. 计算机等级考试网络,全国计算机等级考试三级笔记三(网络的基本概念)