JAVA.SE IO流
文章目录
- 1.什么是IO流
- 2.io流的分类
- 3.字节流
- 3.1万物皆对象,一切皆字节
- 3.2FileOutputStream
- 3.3 字节输入流
- 3.4 FileInputStream字节输入流
- 3.5 复制一个文档,或者图片
1.什么是IO流
Input输入流,数据从外部设备到程序中,读数据的流
Output输出流,数据从程序到外部设备,写数据的流
流是一种比喻,表示传输数据

2.io流的分类
输入流,输出流
根据操作流的数据分类
字符流,字节流
总述:
Java中有IO四大流
字节输入流:InputStream(顶级父类,抽象类)
字节输出流:OutputStream(顶级父类,抽象类)
字符输入流:reader(顶级父类,抽象类)
字符输出流:Writer(顶级父类,抽象类)
3.字节流
3.1万物皆对象,一切皆字节
万物皆对象思想: 现实生活中的任何东西,我们在Java中都可以使用一个对象来表示
IO流中一切皆字节: 我们电脑所有的数据,最终都是由字节组成的(01010101二进制组成)
普通文本文件,图片文件,视频文件,都是字节组成的吗?? 是的!!!
为什么我打开这些文件看到不是01010101这些数据??? 因为我们打开这些文件使用的软件帮助我们解析了
顶级父类:字节输出流OutputStream
共性方法:
public void close(); 关闭此流,释放资源
public void flush(); 刷新缓冲区(目前没有!!)
public void write(int b); //一次写一个字节
public void write(byte[] bs);//一次写一个字节数组
public void write(byte[] bs,int startIndex,int len);//一次写一个字节数组的一部分
3.2FileOutputStream
文件的字节输出流
package com.itcast.Text03;import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;public class Demo01_FileOutputStream {public static void main(String[] args) throws IOException {FileOutputStream fos = new FileOutputStream("1.txt");fos.write(97);byte[] bs = {97, 98, 99};fos.write(bs);}
}
怎么在文档后面继续追加
package com.itcast.Text03;import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;public class Demo01_FileOutputStream {public static void main(String[] args) throws IOException {FileOutputStream fos = new FileOutputStream("1.txt",true);fos.write(97);byte[] bs = {97, 98, 99};fos.write(bs);}
}
换行 \r\n
表示换行
flush刷新资源。close关闭资源
流一旦使用完毕,应及时关闭资源
3.3 字节输入流
InputStream
常用方法
close关闭流释放资源
read释放资源
3.4 FileInputStream字节输入流
构造方法:
public FileInputStream(String path);//传入文件的路径
public FileInputStream(File file);//传入文件的File对象
package com.itcast.Text03;import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;public class Demo03_FileInputStream {public static void main(String[] args) throws IOException {FileInputStream fis = new FileInputStream("1.txt");byte[] bs = new byte[1024];int len;while ((len = fis.read(bs)) != -1) {System.out.println(new String(bs, 0, len));}}
}

3.5 复制一个文档,或者图片
package com.itcast.Text03;import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;public class Demo03_FileInputStream {public static void main(String[] args) throws IOException {FileInputStream fis = new FileInputStream("1.txt");byte[] bs = new byte[1024];int len;while ((len = fis.read(bs)) != -1) {System.out.println(new String(bs, 0, len));}}
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
