JAVA基础知识之IO——IO流(Stream)的概念

本文介绍了Java IO流的概念及分类,详细解析了字节流和字符流的区别,并概述了InputStream/Reader和OutputStream/Writer等核心类的功能及其常用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java IO 流

Java将不同的设备或载体(键盘、文件、网络、管道等)的输入输出数据统称为“流”(Stream),即JAVA的IO都是基于流的。 JAVA传统的所有流类型类都包含在java.io包中。

流的分类方法有很多,例如根据流向分为输入流/输出流,根据角色分为节点流/处理流,

根据数据不同的操作单元,JAVA分为两种基本的流类型,即

  • 字节流——以8位(即1byte, 8bit)作为一个数据单元;
  • 字符流——以16位(即1char, 2byte, 16bit)作为一个数据单元。

Java依据字符流和字节流,定义了用来操作数据的抽象基类InputStream/Reader 和 OutputStream/Writer,再根据不同应用场景(或功能),在这两种抽象基类上派上出上百个子类,用来满足诸如文件,网络,管道等等不同场景的IO需求,从而形成了Java的基本IO体系。

下面是Java IO体系中常用的流类

以上四个基类提供的部分通用的读和写方法如下,

  • int read()-返回的是单个字节数据(字节数据可以直接专程int类型)
  • int read(byte[] buf)-返回的是读取到的字节数,真正的数据保存在buf中
  • void write(int c)- c既可以是政府,也可以是字节
  • void write(byte[] buf  或者 char[] buf)
  • void  write(String str) - Writer专用

 

转载于:https://www.cnblogs.com/fysola/p/6122293.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值