JAVA高级基础(28)---IO流的概念及字节输入输出流的基本使用

版权声明:如需转载请标明出处 https://blog.csdn.net/yj201711/article/details/84847742

IO流

在Java中,对文件的操作,都是以流的形式进行操作。

  1. IO流从流的方向上来分:  输入流  /   输出流
  2. 从文件的构成上:    字节文件(图片、音频、视频)     /       字符文件(纯文本文档)
  3. IO流从操作的文件的构成单元来分:  字节流   /   字符流
  4. 按流的角色:节点流:可以从一个特定的IO设备读写数据的流      /    处理流(包装流/转换流):对一个已存在的流进行连接和封装,通过封装后的流实现数据的读写操作

IO流又分为

  • 字节输入流
  • 字节输出流
  • 字符输入流
  • 字符输出流

IO流的基础

  • 字节输入流   InputStream
  • 字节输出流   OutPutStream
  • 字符输入流   Reader
  • 字符输出流   Writer

字节流

字节输入流 inputStream  有一个实现 :fileInptuStream  可以实现将文件数据读入到程序中

用到 read()方法

  1. public int read()  每次读取一个字节
  2. public int read(byte[] b) 每次读取byte数组大小的字节

字节输出流  outputSteram -- > fileOutPutStream 写数据

用到 writer()方法

  1. public void write(int b)
  2. public void write(byte[] b)
  3. public void write(byte[] b,int off,int len)

   

package org.lanqiao.inputstream.demo;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

public class InputStreamDemo {
	public static void main(String[] args) throws IOException {
		//建立字节输入流
		File file = new File("E:\\JAVA资料\\aa.jpg");
		InputStream  is = new FileInputStream(file);
		//建立字节输出流
		OutputStream os = new FileOutputStream(new File("e:\\JAVA资料\\abcde.jpg"));
	/*	int  b = is.read();//每次读取一个字节。
		System.out.println(b);
		int  b1 = is.read();//每次读取一个字节。  当read的返回值为-1时,代表文件读完了
		System.out.println(b1);*/
		int b = 0;
		while(b != -1) {
			b = is.read();
			os.write(b);
			
		}
	}
}

猜你喜欢

转载自blog.csdn.net/yj201711/article/details/84847742