千锋教育-做有情怀、有良心、有品质的职业教育机构

当前位置:首页  >  IT问答库  >  Java基础知识

Java中io流详解

发布:Java培训 2022-01-20 15:36

Java中io流详解

推荐答案

      流,其实是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作。按照不同的划分标准,可以分为字符流和字节流、输入流和输出流。

      由于因为数据编码的不同,而有了对字符进行高效操作的流对象,这就是字符流。字符流本质其实就是基于字节流读取时,去查了指定的码表。字节流和字符流的区别:

      1)读写单位不同:字节流以字节(8bit)为单位,字符流以字符为单位,根据码表映射字符,一次可能读多个字节;

      2)处理对象不同:字节流能处理所有类型的数据(如图片、avi等),而字符流只能处理字符类型的数据;

      3)字节流在操作的时候本身是不会用到缓冲区的,是文件本身的直接操作的;而字符流在操作的时候下后是会用到缓冲区的,是通过缓冲区来操作文件。

      设备上的数据无论是图片或者视频,文字,它们都以二进制存储的,所以字节流可以处理设备上的所有,在开发中字节流使用广泛。

      Java语言定义了许多类专门负责各种方式的输入或者输出,这些类都被放在java.io包中。其中,所有输入流类都是抽象类InputStream(字节输入流),或者抽象类Reader(字符输入流)的子类;而所有输出流都是抽象类OutputStream(字节输出流)或者Writer(字符输出流)的子类。

      InputStream类是字节输入流的抽象类,Reader类是字符输入流的抽象类,OutputStream类是字节输入流的抽象类,Writer类是字符输出流的抽象类,File类是IO包中唯一代表磁盘文件本身的对象。对输入流只能进行读操作,对输出流只能进行写操作,程序中需要根据待传输数据的不同特性而使用不同的流。

io

io

最新问答资讯

01 unity用什么编程语言?unity学习难度大吗

学习 unity 语言
6020 人关注

02 python容易学吗?学好python有什么好处?

学习 python 工作 培训
5389 人关注

03 html是什么语言?html学习难吗?

学习 html 语言 可以
5062 人关注

04 c语言难学吗?c语言学好要多久?

语言 技术 学习
4733 人关注

06 学好平面设计要多久?报速成班靠谱吗?

平面 设计 学习 时间
4238 人关注

相关问题

Java培训班的课程一般都学习什么内容

首先是Java技术的核心和基础JavaSE,这一阶段会接触到Java基础语...

学习Java有哪些技巧吗

java作为最经典的编程语言之一受到大家的喜爱,不止你我,很多人...

java程序员常用到的技术有哪些

操作系统、计算机网络这些基础知识,工作之后基本都忘的差不多了...

int和integer有哪些区别?

int 和 Integer 的基本区别有如下⼏点: int 是基本数据类型,...

JVM模型的介绍二

JVM模型的介绍二,接着上一篇我们继续来分享,栈之本地方法栈。 ...

JVM模型的介绍一

Java培训班教程系列分享JVM模型的介绍一,Java内存分配:JVM定义...

测一测
你知道多少IT梗