IO概述(概念&分类)和字节输入流+OUTputStream类&FileOutPutStream类介绍
IO概述
什么是IO
生活中,你肯定经历过这样的场景。当你编辑一个文本文件,忘记了保存,可能文件就白白编辑了。当你的电脑上插入一个U盘,可以吧一个视频,拷贝到你的电脑硬盘里,那么数据都是在哪些设备上的呢?键盘/内存/硬盘/外界设备等等
我们把这种数据的和参数,可以看做是一种数据的流动,按照流动的方向,以内存为基准,分为输入Input和输出OutPut,即流向内存是输入流,流出内存是输出流
java中I/O操作主要是指使用java.io报下的内容,进行输入,输出等操作,输入也叫读取数据,输出也叫作写出数据
IO流的分类
根据数据流向分为输入流和输出流
输入流:把数据从其他设备上读取到内存中的流
输出流:把数据从内存中写出到其他设备上的流
根据数据的类型分为:字节流和字符流
字节流:
一切文件数据(文本、图片、视频等)在存储时,都是以二进制数学的形式保存,都一个一个的字节,那么传输时一样如此。多以字节流可以传输任意文件数据,在操作流的时候,无论使用什么样的流对象,底层传输的始终为二进制数据
字节输出流(OutputStream)
java java.io.OutputStream抽象类是表示字节输出流的所有类的超类,将指定的字节信息写出到目的地。他定义了字节输出流的基本共性功能方法。
java public void close():关闭次输出流并释放与此流相关联的任何系统资源。
java public void flush():刷新此输出流并强制任何缓冲的输出字节被写出
java public void write(byte[] b):将b.lengtn字节从指定的字节数组写入到此输出流
java public void write(byte[] b,int off,int len):从指定的字节数组写入到len字节,从偏移量off开始输出到此输出流
java public abstract void write(int b):将指定的字节输出流
注意:close方法,当完成流操作的时候,必须调用此方法,释放系统资源
java java.io.FileOutputStream extends OutputStream
FileOutputStream:文件字节输出流
作用:吧内存中的数据写入到磁盘的文件中
构造方法:
FileOutputStream(String name);创建一个向具有指定名称的文件中写入数据的输出文件流
FileOutputStream(File file);创建一个向指定File对象表示的文件中写入数据的文件输出流
参数:写入数据的目的
String name:目的地是一个文件的路径
File file:目的地是一个文件
构造方法的租偶用:
1.创建一个FileOutputStream对象
2.会根据构造方法中传递的文件/文件路径,创建一个空的文件
3.会把FileOutoutStream对象指向创建好的文件
IO概述(概念&分类)和字节输入流+OUTputStream类&FileOutPutStream类介绍的更多相关文章
- FileNameFilter过滤器的使用和Lambda优化程序--IO概述(概念&分类)
FileNameFilter过滤器的使用和Lambda优化程序 public class Demo02Filter { public static void main(String[] args) { ...
- 一切皆为字节和字节输出流_OutputStream类&FileOutputStream类介绍
一切皆为字节 一切文件数据(文本.图片.视频等)在存储时,都是以二进制数字的形式保存,都一个一个的字节,那么传输时一样如此.所以,字节流可以传输任意文件数据.在操作流的时候,我们要时刻明确,无论使用什 ...
- 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_04 IO字节流_1_IO概述(概念&分类)
- Java 之 字节输入流 [InputStream]
一.字节输入流 java.io.InputStream 抽象类是表示字节输入流的所有类的超类,可以读取字节信息到内存中. 它定义了字节输入流的基本共性功能方法. 共性方法: public void c ...
- [19/03/30-星期六] IO技术_四大抽象类_ 字节流( 字节输入流 InputStream 、字符输出流 OutputStream )_(含字节文件缓冲流)
一.概念及分类 InputStream(输入流)/OutputStream(输出流)是所有字节输入输出流的父类 [注]输入流和输出流的是按程序运行所在的内存的角度划分的 字节流操作的数据单元是8的字节 ...
- 36、IO流概述和分类
IO流概述 IO流的主要作用是用来处理设备之间的数据传输,例如可以使用IO流将一台电脑硬盘里面的照片传输到另一台电脑上面,即将照片转换为字节,然后将字节传到另一台电脑上面,另一台电脑接收后,可以将这些 ...
- 字节输入流:io包中的InputStream为所有字节输入流的父类。
字节输入流:io包中的InputStream为所有字节输入流的父类. Int read();读入一个字节(每次一个): 可先使用new byte[]=数组,调用read(byte[] b) read ...
- Java基础知识强化之IO流笔记16:IO流的概述和分类
1. IO流的分类 流向: (1)输入流:读取数据到内存 (2)输出流:写入数据到硬盘(磁盘) 操作的数据类型: (1)字节流:操作的数据是字节 ...
- IO初步,字节输入流和字节输出流
字节输出流 OutputStream(基类,抽象) 特点:写任意的文件 方法:写出数据的方法:write write(int b) 写出1个字节 -128~127之间,写的是一个ASCLL码的值 wr ...
随机推荐
- k8s入门之Secret(十)
Secret与ConfigMap都是用来存储配置信息的,不同之处在于ConfigMap是明文存储的,而Secret用来保存敏感信息,如:密码.OAuth令牌,ssh key等等.Secret常用有三种 ...
- OracleRAC ACFS安装与卸载
目录 ACFS安装与卸载: 一.在RAC上手动安装ACFS/ADVM 模块的步骤如下: 1.验证内存中是否存在 ACFS/ADVM 模块: 2.用root用户重新安装ACFS/ADVM 模块: 3.A ...
- uniapp中利用uni.$emit()和uni.$on()进行页面和tabbar页面传值(页面通讯)
tabbar页面 <script> export default { data() { return { list: [] , }; }, onLoad() { // 监听事件 uni.$ ...
- 每日一题20180401-Linux
一.题目 1.1 在mysql命令行临时开启自动补全 1.2 通过shell脚本打印乘法口诀表 二.答案 2.1 # auto-rehash:读取表信息和列信息,可以在连上终端后开启tab补齐功能 # ...
- Python数据分析--Numpy常用函数介绍(3)
摘要:先汇总相关股票价格,然后有选择地对其分类,再计算移动均线.布林线等. 一.汇总数据 汇总整个交易周中从周一到周五的所有数据(包括日期.开盘价.最高价.最低价.收盘价,成交量等),由于我们的数据是 ...
- 源码解读etcd heartbeat,election timeout之间的拉锯
转一个我在知乎上回答的有关raft election timeout/ heartbeat interval 的回答吧. 答:准确来讲: election是timeout,而heartbeat 是in ...
- 基于.NetCore开发博客项目 StarBlog - (8) 分类层级结构展示
系列文章 基于.NetCore开发博客项目 StarBlog - (1) 为什么需要自己写一个博客? 基于.NetCore开发博客项目 StarBlog - (2) 环境准备和创建项目 基于.NetC ...
- BZOJ4713 迷失的字符串 解题报告
BZOJ4713 题目大意:有 \(n\) 个点 \(n-1\) 条边,每条边有一个字符.给你 \(m\) 个字符串 \(s_i\),问每个字符串是否可以通过树上的一条简单路径表示. \(n,m\le ...
- Go微服务框架go-kratos实战05:分布式链路追踪 OpenTelemetry 使用
一.分布式链路追踪发展简介 1.1 分布式链路追踪介绍 关于分布式链路追踪的介绍,可以查看我前面的文章 微服务架构学习与思考(09):分布式链路追踪系统-dapper论文学习(https://www. ...
- 数位 dp 总结
数位 dp 总结 特征 问你一个区间 \([L,R]\) 中符合要求的数的个数 一个简单的 trick :把答案拆成前缀和 \(Ans(R)-Ans(L-1)\) 如何求 \(Ans()\) ,就要用 ...