JAVA笔记之IO流第一部分
来源:互联网 发布:permutation算法 编辑:程序博客网 时间:2024/05/22 06:23
1.IO流:是input(输入)和output(输出)的缩写 负责不同设备间的数据传输
2.IO流的分类:
a.根据流向分类
a1:输入流:把数据从硬盘读取到内存。
a2:输出流:把数据从内存写到硬盘中。
b.根据操作单位分类
b1:字节流:
以字节为单位的IO流,操作的是字节,每次读写都是以字节为单位。
字节流可以操作任意类型的文件。因为所有的文件都是以字节的形式存储的。
b2:字符流:
以字符为单位的IO流,操作的是字符,每次读写都是以字符为单位。
字符流可以操作文本类文件,因为只有在文本类文件上才能用到字符。
3.IO流的抽象基类
a:字节输入流:InputStream。
b:字节输出流:OutputStream。
c:字符输入流:Reader。
d: 字符输出流:Writer。
4.IO流的常用子类
a:基本字节输入流:FileInputStream。
b: 基本字节输出流:FileOutputStream。
c: 基本字符输入流:FileReader。
d: 基本字符输出流:FileWriter。
5.FileInputStream:
a:构造方法
FileInputStream(String name)
b:常用方法
int read()读取一个字节
FileInputStream fis=new FileInputStream("a.txt");
int x;
while((x=fis.read())!=-1){
System.out.println(x);
}
fis.close();//关闭流
7.文件的拷贝
FileInputStream fis = new FileInputStream("a.jpg");
FileOutputStream fos = new FileOutputStream("b.jpg");
int len;
while((len = fis.read()) != -1) {
fos.write(len);
}
fis.close();
fos.close();
FileInputStream fis = new FileInputStream("a.jpg");
FileOutputStream fos = new FileOutputStream("b.jpg");
byte[] arr = new byte[1024 * 8];
int len;
while((len = fis.read(arr)) != -1) {
fos.write(arr,0,len);
}
fis.close();
fos.close();
9.缓冲流拷贝:
FileInputStream fis = new FileInputStream("a.jpg");
FileOutputStream fos = new FileOutputStream("b.jpg");
BufferedInputStream bis = new BufferedInputStream(fis);
BufferedOutputStream bos = new BufferedOutputStream(fos);
int len;
while((len = bis.read()) != -1) {
bos.write(len);
}
bis.close();
bos.close();
10.flush方法和close方法的区别:
flush方法:刷新缓冲区。
close方法:关闭IO流和刷新缓冲区。
12.JDK1.7之后IO标准异常处理
try(){
}
注意:把IO流放在try里使用 使用之后会自行关闭IO流。
- JAVA笔记之IO流第一部分
- Java IO体系 - 第一部分
- java笔记之IO流
- JAVA笔记之IO流
- IO流笔记第一发
- Javase基础部分笔记之IO(一)
- Javase基础部分笔记之IO(二)
- Java IO部分的学习笔记
- Java学习第四天笔记-第一部分
- Java复习笔记-第一部分
- java笔记 IO流之字符流
- java学习笔记之IO流
- java自学笔记之IO流
- 黑马程序员 java笔记之 IO流
- java学习笔记之IO流
- [学习笔记]Java IO之字节流
- [学习笔记]Java IO之字符流
- java学习笔记之IO流
- ListView原来这么好用
- Java--JDK动态代理核心源码解析
- 进阶篇:1)DFMA方法的运用
- 超级js专家------------Cookie封装
- Spring之Advisors
- JAVA笔记之IO流第一部分
- SQL性能优化案例:分享一次系统迁移获得的经验
- MongoDB数据建模小案例:多列数据结构
- 吐丝消息
- Oracle SQL 查询排序
- POSIX 线程编程指南(一)
- 存储过程实现可扩展灵活接口
- js-计算保留小数点一两位并避免出现无限小数的bug
- android BroadcastReceiver广播使用详解