主页 > 新闻资讯 > 大数据开发基础之JAVA-IO(一)

大数据开发基础之JAVA-IO(一)

作者:游老师 浏览次数: 2021-03-09 13:58
本期给大家带来的是大数据开发基础中之JAVA-IO的相关知识,IO全称InputStream,outputStream,是输入流、输出流的意思,这是Java的核心库java.io提供了全面的IO接口。包括:文件读写、标准设备输出等多种功能,今天就来深入了解下IO。和上期一样,IO篇会分为上下两篇来写。
一、IO
我们先来了解下IO,IO流是用于处理设备之间的数据传输,在Java程序当中,对于数据的输入/输出操作都是通过“流”的方式进行的。JAVA IO提供了各种类型的“流”类的接口,以此来获取不同种类的数据,并通过标准的方法输入或输出数据。
二、流
流:代表任何有能力产出数据的数据源对象或者是有能力接受数据的接收端对象<Thinking in Java>
流的本质:数据传输,根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作。
流的作用:为数据源和目的地建立一个输送通道
流是一个很形象的概念,当程序需要读取数据的时候,就会开启一个通向数据源的流,这个数据源可以是文件,内存,或是网络连接。类似的,当程序需要写入数据的时候,就会开启一个通向目的地的流。这时候你就可以想象数据好像在这其中“流”动一样。
而对于计算机来说,数据都是以二进制形式读出或写入的。以一个简单易懂的例子来举例,我们把文件想象为一个水池,然后通过管道将水池里的水抽出来,这里的管道也就相当于Java中的流。流的本质是一种有序的数据集合,有数据源和目的地。
三、流的分类
4个基本的抽象流类型,所有的流都继承这四个。
           输入流      输出流
      字节流  InputStream  outputStream
      字符流  Reader      Writer
 
 
 
 
 
按照流的方向划分
输入流InputStream:只能从中读数据
输出流outputStream:只能向文件中写数据
输入:读取外部数据(磁盘、光盘等存储设备的数据)到程序(内存)中。
输出:将程序(内存)数据输出到磁盘、光盘等存储设备中
根据处理数据类型划分:
字符流Reader Writer
字节流InputStream    OutputStream
按数据来源(去向)划分:
1、File(文件): FileInputStream, FileOutputStream, FileReader, FileWriter
2、byte[]:ByteArrayInputStream, ByteArrayOutputStream
3、Char[]: CharArrayReader,CharArrayWriter
4、String:StringBufferInputStream, StringReader, StringWriter
5、网络数据流:InputStream,OutputStream, Reader, Writer
四、特性
相对于程序来说,输出流是往存储介质或数据通道写入数据,而输入流是从存储介质或数据通道中读取数据,一般来说关于流的特性有下面几点:
1、先进先出,最先写入输出流的数据最先被输入流读取到。
2、顺序存取,可以一个接一个地往流中写入一串字节,读出时也将按写入顺序读取一串字节,不能随机访问中间的数据。(RandomAccessFile可以从文件的任意位置进行存取(输入输出)操作)
3、只读或只写,每个流只能是输入流或输出流的一种,不能同时具备两个功能,输入流只能进行读操作,对输出流只能进行写操作。在一个数据传输通道中,如果既要写入数据,又要读取数据,则要分别提供两个流。

以上就是大数据开发基础之JAVA-IO(一)的所有内容了,明天将会更新IO(二),希望大家可以在本篇文章中对IO有一定的了解,有所收获。
希望大家点个关注,及时收取最新文章推送。
 
 
热点排行
推荐文章
立即申请>>