Conceptos básicos de Java: la secuencia IO utiliza la secuencia de bytes para leer y escribir archivos


1. Introducción al flujo de E / S 1. Definición El
flujo de E / S se refiere a una cadena de cadenas fluidas, que es un canal para enviar información de una manera primero en entrar, primero en salir; a través del flujo de E / S, se pueden manipular archivos en el disco duro.
2. Clasificación
De acuerdo con la dirección del flujo, el flujo de IO se puede dividir en flujo de entrada y flujo de salida;
según la unidad de procesamiento de datos, el flujo de IO se puede dividir en flujo de bytes y flujo de caracteres;
la clase base del flujo de entrada de bytes es FileInputStream; el
flujo de salida de bytes La clase base es FileOutputStream; la clase base de
los flujos de entrada de caracteres es Reader; la clase base de
los flujos de salida de caracteres es Writer.
2. Realice la lectura y copia de archivos a través del flujo de bytes El
ejemplo se da cuenta de la copia de D: //filecopy/oldfile.txt a D: //oldfile.txt
(1) Código

import java.io.*;
/**
 * @author ThinkPad
 * @date 2020/5/25 19:16
 */

public class test1 {
    
    
    public  static  void main(String[] args){
    
    
        //字节输入输出流
        FileInputStream fis = null;
        FileOutputStream fos = null;
        try {
    
    
            fis = new FileInputStream("D://filecopy/oldfile.txt");
            fos = new FileOutputStream("D://oldfile.txt");
            //io读数据的时候,数据存的位置(相当于传输数据的管子)
            byte bs[] = new byte[1024];
            int i = 0;
            //read()方法返回的int类型,是表示数据下一个字节的字节码,如果已经到达流的最后面了,那就返回-1
            while(i!=-1){
    
    
                //read()的内容就写入新的文件                
            fos.write(bs,0,i);
            i= fis.read(bs);
            }
            System.out.println("数据复制完成");
        }
        catch(Exception e){
    
    
            e.printStackTrace();
        }
        finally{
    
    
            try {
    
    
                fos.close();
                fis.close();
            } catch (IOException e) {
    
    
                e.printStackTrace();
            }
        }
    }
}

(2) El punto de conocimiento
bs [] se utiliza para leer el archivo original y colocarlo en el espacio de almacenamiento del nuevo archivo, que puede entenderse como la tubería de agua cuando se descarga el agua;
el tipo int devuelto por la lectura ( ) en FileInputStream representa los datos Un byte de código de bytes, si ha llegado al final de la secuencia, devuelve -1.
(3) Resultados de ejecución
Inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/qq_44801116/article/details/106347605
Recomendado
Clasificación