`
ammengke
  • 浏览: 1199 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java流

 
阅读更多

文章出处:http://blog.csdn.net/yuebinghaoyuan/article/details/7388059

 

Java中的流,可以从不同的角度进行分类。

按照数据流的方向不同可以分为:输入流和输出流。

按照处理数据单位不同可以分为:字节流和字符流。

按照实现功能不同可以分为:节点流和处理流。

 

输出流

 

 

输入流

 

因此输入和输出都是从程序的角度来说的。

字节流:一次读入或读出是8位二进制。

字符流:一次读入或读出是16位二进制。

字节流和字符流的原理是相同的,只不过处理的单位不同而已。后缀是Stream是字节流,而后缀是ReaderWriter是字符流。

 

节点流:直接与数据源相连,读入或读出。

 

直接使用节点流,读写不方便,为了更快的读写文件,才有了处理流。

处理流:与节点流一块使用,在节点流的基础上,再套接一层,套接在节点流上的就是处理流。

 

Jdk提供的流继承了四大类:InputStream(字节输入流)OutputStream(字节输出流),Reader(字符输入流),Writer(字符输出流)。

以下是javaio中常用的流。

 

字节输入流:

字节输出流:

字符输入流:

字符输出流:

 

简单介绍其上图:

对文件进行操作:FileInputStream(字节输入流),FileOutputStream(字节输出流),FileReader(字符输入流),FileWriter(字符输出流)

对管道进行操作:PipedInputStream(字节输入流),PipedOutStream(字节输出流),PipedReader(字符输入流),PipedWriter(字符输出流)

PipedInputStream的一个实例要和PipedOutputStream的一个实例共同使用,共同完成管道的读取写入操作。主要用于线程操作。

字节/字符数组:ByteArrayInputStreamByteArrayOutputStreamCharArrayReaderCharArrayWriter是在内存中开辟了一个字节或字符数组。

Buffered缓冲流::BufferedInputStreamBufferedOutputStreamBufferedReader,BufferedWriter,是带缓冲区的处理流,缓冲区的作用的主要目的是:避免每次和硬盘打交道,提高数据访问的效率。

转化流InputStreamReader/OutputStreamWriter,把字节转化成字符。

数据流DataInputStreamDataOutputStream

因为平时若是我们输出一个8个字节的long类型或4个字节的float类型,那怎么办呢?可以一个字节一个字节输出,也可以把转换成字符串输出,但是这样转换费时间,若是直接输出该多好啊,因此这个数据流就解决了我们输出数据类型的困难。数据流可以直接输出float类型或long类型,提高了数据读写的效率。

打印流:printStreamprintWriter,一般是打印到控制台,可以进行控制打印的地方。

对象流ObjectInputStreamObjectOutputStream,把封装的对象直接输出,而不是一个个在转换成字符串再输出。

序列化流:SequenceInputStream

对象序列化:把对象直接转换成二进制,写入介质中。

使用对象流需要实现Serializable接口,否则会报错。而若用transient关键字修饰成员变量,不写入该成员变量,若是引用类型的成员变量为null,值类型的成员变量为0.

 

分享到:
评论

相关推荐

    java流.rarjava流.rar

    Java流是Java编程语言中处理数据输入和输出的重要机制,它允许程序在内存与外部设备之间,以及程序的不同部分之间高效地传输数据。Java流分为字节流和字符流两大类,字节流处理单个8位字节的数据,而字符流处理...

    Java流媒体的控制

    Java流媒体控制是Java编程中一个重要的领域,它涉及到数据传输和处理,特别是在音频和视频内容的实时或异步播放中。Java提供了多种流类型,包括字符流、字节流和特殊的音频流,来实现对这些媒体数据的有效操作。下面...

    Java流(文件读写操作)

    ### Java流(文件读写操作) #### 一、流的分类 Java中处理文件和数据时,使用流的概念来进行操作。根据不同的标准,流可以分为几种类型。 ##### 1. 按数据流动方向 - **输入流**:主要用于从数据源读取数据。输入...

    java实现流媒体播放

    最后,Java流媒体播放程序应具备良好的错误处理机制,如网络中断后的恢复、媒体文件格式不支持时的提示等。同时,考虑到不同的操作系统和硬件环境,程序还需要考虑跨平台的兼容性。 总的来说,Java 实现流媒体播放...

    Java流操作文件

    Java流是Java编程语言中处理输入输出操作的重要机制,它为数据传输提供了高效且灵活的方式。在Java中,文件操作是通过流的概念实现的,这允许我们读取、写入、移动、复制以及修改文件。下面我们将深入探讨Java流如何...

    JAVA流文件全部例子

    JAVA流文件全部例子JAVA流文件全部例子JAVA流文件全部例子JAVA流文件全部例子JAVA流文件全部例子JAVA流文件全部例子JAVA流文件全部例子JAVA流文件全部例子JAVA流文件全部例子JAVA流文件全部例子

    JAVA流比较两个TXT文件数据

    下面将详细介绍如何利用JAVA流、FileReader和BufferedReader来实现这个功能。 首先,我们需要理解什么是JAVA流。在Java中,流是一组有序的数据序列,可以是字节流或字符流,用于从源(如文件、网络连接等)读取数据...

    java操作excel数据的导入导出,java流的读取

    本文将详细讲解如何使用Java操作Excel数据,并重点探讨Java流的读取技术。 首先,Java中处理Excel文件最常用的库是Apache POI。Apache POI是一个开源项目,它提供了对Microsoft Office格式的全面支持,包括Excel(....

    java流技术

    包括一下内容 1Java 流式输入/输出原理 2Java 流类的分类 3输入/输出流类 4常见的节点流和处理流 5文件流 6缓冲流 7数据流 8转换流 9Print流

    Java流和文件总结(二)

    在本文中,我们将深入探讨Java流和文件处理的一些关键知识点。 首先,流是Java中的一个抽象概念,它代表了数据的有序传输。流可以是字节流(处理原始字节数据)或字符流(处理Unicode字符)。Java提供了许多类来...

    IO流 javaio java 流

    Java中的IO流是Java核心库的重要组成部分,它用于在不同数据源之间传输数据。Java IO流分为两大类:字符流(Character Stream)和字节流(Byte Stream)。字符流处理单个字符,而字节流处理8位的字节序列。它们又...

    DownloadPicture.java 流下载图片实例

    DownloadPicture.java 流下载图片实例 DownloadPicture.java 流下载图片实例 DownloadPicture.java 流下载图片实例 DownloadPicture.java 流下载图片实例

    java流复制图片

    java流复制图片,这个是老师给的demo,很不错,有时候能用到

    采用red5视频流服务的web视频会议系统.zip_RED5 WEB_java开发red5_java流的视频_red5视频流服务

    Red5是一款开源的Java流媒体服务器,它支持实时流传输协议(RTSP)、实时传输协议(RTP)、实时控制协议(RTCP)以及互联网工程任务组(IETF)定义的交互式网络电视(ITV)协议族。这个压缩包文件"采用red5视频流服务的web视频...

    java流IO思维导图

    java流IO超详细使用,包含:怎么理解流,输出输入流,6个重要的方法,架构体系,分类,java做压缩程序的代码等等。。。。

    java流.....

    Java流是Java编程语言中处理数据输入和输出的重要机制,它允许程序在内存与外部设备之间,以及程序的不同部分之间高效地传输数据。Java流分为字节流和字符流两大类,字节流处理单个字节的数据,而字符流处理Unicode...

    java流实例.rar

    Java流是Java编程语言中处理数据输入和输出的重要机制,特别是在读取、写入或传输大量数据时。在Java中,流(Stream)被设计为一种抽象的概念,它允许我们以统一的方式处理各种类型的I/O操作,无论是从硬盘、网络...

    RTSP.rar_RTSP JAVA_java rtsp_java 流媒体_rtsp_video

    通过学习和理解这些类的功能和交互,开发者可以构建自己的Java流媒体应用,支持实时音视频的播放和控制。这涉及到网络编程、多媒体处理和移动设备应用开发等多个方面的知识,对于深入理解流媒体系统及其在Java环境下...

    java 使用流下载文件

    使用Java流来处理文件下载是一种非常常见的技术手段。本文将详细介绍如何利用Java的流(Stream)技术实现文件的下载操作,并解释代码中的各个部分及其工作原理。 #### 二、知识点详解 ##### 2.1 文件路径与对象...

Global site tag (gtag.js) - Google Analytics