JavaSE--IO流
学习时间
2021-04-08
学习内容
IO流基础知识
定义
- IO流用来处理设备之间的数据传输
- Java对数据的操作是通过流的方式
- Java用于操作流的对象都在IO包 java.io 当中
概述
字节流的抽象基类:
InputStream ,OutputStream。字符流的抽象基类:
Reader , Writer。注:由这四个类派生出来的子类名称都是以其父类名作为子类名的后缀。
如:InputStream的子类FileInputStream。
如:Reader的子类FileReader。
分类
(1): 按照流向进行划分
输入流
输出流
(2): 按照操作的数据类型进行划分
字节流
字节输入流 InputStream 读
字节输出流 OutputStream 写字符流
字符输入流 Reader 读
字符输出流 Writer 写
常用字节流
FileOutputStream类 和 FileInputsteam类
构造方法
- FileOutputStream(File file)
- FileOutputStream(String name)
- FileInputStream(File file)
- FileInputStream(String name)
常用方法
- public void write(int b):写一个字节 超过一个字节的时候,忽略掉前面的字节
- public void write(byte[] b):写一个字节数组
- public void write(byte[] b,int off,int len):写一个字节数组的一部分
- public void read():写一个字节 超过一个字节的时候,忽略掉前面的字节
- public void read(byte[] b):写一个字节数组
- public void read(byte[] b,int off,int len):写一个字节数组的一部分
注意:
- FileOutputStream本类在new对象的时候会判断文件是否存在,如果不存在,就会自动创建出来。
- FileInputsteam类在new对象的时候会判断文件是否存在,如果不存在,不会自动创建,而是会报错。
演示
演示阶段异常先抛出,后文会有专门针对异常的解释和处理。
- 复制文件
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;public class Test {public static void main(String[] args) throws IOException {FileInputStream in = new FileInputStream(new File("a.txt"));FileOutputStream out = new FileOutputStream(new File("b.txt"));byte[] bytes = new byte[1024];int by = 0;while ((by = in.read(bytes)) != -1) {out.write(bytes,0,by);}in.close();out.close();System.out.println("复制完成 ");}
}
- 复制歌曲
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;public class Test {public static void main(String[] args) throws IOException {FileInputStream in = new FileInputStream("C:\\Users\\用户名\\Desktop\\贝加尔湖畔.mp3");FileOutputStream out = new FileOutputStream("C:\\Users\\用户名\\Desktop\\贝加尔湖畔2.mp3");byte[] bytes = new byte[1024];int by=0;while ((by=in.read(bytes))!=-1) {out.write(bytes,0,by);}in.close();out.close();System.out.println("复制完成 ");}
}
声明:
关于转载:
允许非商业用途转载,注明出处和链接即可。
JavaSE--IO流相关推荐
- JavaSE IO流 Vol.2 节点流 - 输入流 入门
JavaSE IO流 Vol.2 节点流 - 输入流 入门 1. 前言 2. 节点流 - 输入流 结构体系 3. 节点流 - 输入流 ● InputStream · FileInputStream ● ...
- JavaSE | IO流
java.io.File类(文件和目录路径名的抽象表示形式) 如果希望在程序中操作文件和目录都可以通过File类来完成,File类能新建.删除.重命名文件和目录. File类是文件或目录的路径,而不是 ...
- JavaSE——IO流
字符集/编码表 概念: 字符集其实就是我们之前说的编码表. 编码表的作用: 计算机在存储数据的时候会用到他. 比如:计算机要存储小写的a,会到ASCII码表中,查询到小写的a对应的数字是9 ...
- JavaSE -IO流
文章目录 1.File---文件类 1.1 File类介绍 1.2 File的主要工作 1.3 入门案例 FileDemo001 1.4 File 创建文件案例 FileDemo002 1.5 Fil ...
- JAVASE IO流,文字不多,代码为主,自学用,谨慎借鉴,有错误请指正
目录 java.io.File类:主要用于文件和目录路径名的创建,查找,删除操作 绝对路径和相对路径 文件夹操作 IO流FileReader,FileWriter对文本文件进行复制操作 IO流File ...
- JAVASE基础模块三十四( 菜鸡版简单登录验证模块系统IO流文件写入)
JAVASE基础模块三十四( 菜鸡版简单登录验证模块系统IO流文件写入) 开发流程:需求文档 接口文档 效果图 开发环境统一:JDK1.8 IDEA win10 GIT SSM SSH SpringB ...
- JavaSE进阶26 - IO流概述、字节流、字符流、转换流、缓冲流
目录 IO概述 FileInputStream的使用 FileOutputStream使用 文件复制 文件的复制原理 代码 FileReader FileWriter 复制普通文本文件 Buffere ...
- JavaSE从头再来(七)——增强IO流
JavaSE从头再来(七)--增强IO流 从头再来第七弹,主要涉及到缓冲流.转换流.序列化流和打印流 一.缓冲流 能够高效读写的缓冲流,能够转换编码的转换流,能够持久化存储对象的序列化流等等.这些功能 ...
- Java全栈(二)JavaSE:25.File类和IO流
1 java.io.File类 1.1 概述 File类是java.io包下代表与平台无关的文件和目录,也就是说如果希望在程序中操作文件和目录都可以通过File类来完成,File类能新建.删除.重命名 ...
- JavaSE 进阶 - 第23章 IO流
JavaSE 进阶 - 第23章 IO流 1.IO流,什么是IO? 2.IO流的分类 3.流应该怎样学习? 4.java IO流的四大家族 5.java.io包下需要掌握的16个流 5.1 FileI ...
最新文章
- 人工智能项目正在起飞:这对未来的工作意味着什么?
- OpenCV成长之路:图像滤波
- IIS 上传文件大小配置步骤(默认200K)
- Java语言语法语义分析器设计与实现
- 史上最好记的神经网络结构速记表(上)
- Asp.net页面和Html页面之间的关系
- 关于Python的一切:2018年,你读这8本书就够了
- 动态向客户端注册脚本文件
- LDO芯片数据手册怎么看?
- fenix3 hr 中文说明书_佳明 Fenix3 HR中、英文菜单对照 V4.0
- Flask-SQLAlchemy relationship中的 lazy屬性
- 计算机打印驱动怎么安装,打印机驱动怎么安装,详细教您打印机驱动怎么安装...
- 渗透测试入门(域名、DNS)— 理论知识
- python 远程操作Sqlite3
- 线性表示线性相关线性无关
- Themida是先进的Windows软件保护系统
- 使用内存池的原因,内存池的应用
- 明风社和大家分享利用网络赚钱的集中方法
- 马克!程序员必须收藏的 10 类工具库,助你提高效率变大神
- vosviewer关键词共现网络实现
热门文章
- 天方夜谭,躲过热力学第二定律的时间结晶“永动机”在谷歌量子计算机中实现
- CUMT2020华为杯
- 《0day安全》——数据与程序的分水岭:DEP
- 姐姐担忧闪婚妹妹被骗强迫迎其乱精力病
- Qtdesigner设计实例——计算器 +可执行文件exe制作
- 第5次作业+037+吴烨倩
- 【总结】java.lang.StackOverflowError错误原因及解决办法
- 怪兽充电或赴美上市,官网域名竟然是个组合域名?
- java生成一条唯一的邀请码_如何实现用户id生成一个唯一邀请码
- GMTUTC,UNIX时间戳,时区