Java温故而知新-文件相关操作

Writer写入文字到文件

import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.io.Writer;
public class Writer写入文字到文件{
    
    
  public static void main(String [] args) throws Exception{
    
    
    System.out.println("字符写入文字演示");
    File file = new File("/home/vncuser/.yootk/out.txt");
    if(!file.getParentFile().exists()){
    
    
      file.getParentFile().mkdirs();
    }
    System.out.println(file.getAbsolutePath());
    Writer writer = new OutputStreamWriter(new FileOutputStream(file));
    writer.append("还不错!写起来挺流畅的");
    writer.close();

  }
}

Reader从文件读取文本

import java.io.*;

public class Reader从文件读取文本{
    
    
  public static void main(String [] args) throws Exception{
    
    
    System.out.println("--------------读取文本文件---------------");
    File file = new File("/home/vncuser/.yootk/out.txt");
    if(file.exists()){
    
    
      Reader reader = new InputStreamReader(new FileInputStream(file));
      char [] data = new char[1024];
      int len =reader.read(data);
      System.out.println(new String(data,0,len));
      reader.close();
    }

  }
}

文件Copy操作

/**
 * @author : vncuser
 * @created : 2021-03-05
**/

import java.io.*;

public class 文件复制实现{
    
    
  public static void main(String [] args) throws Exception{
    
    
    System.out.println("-------文件复制操作--------");
    File sourceFile = new File("/home/vncuser/.yootk/out.txt");
    File desFile = new File("/home/vncuser/.yootk/copyFile.txt");
    FileInputStream inputStream = null;
    FileOutputStream outputStream = null;
    try{
    
    
      inputStream = new FileInputStream(sourceFile);
      outputStream = new FileOutputStream(desFile);
      byte [] data = new byte[2048];
      int len ;
      while((len =inputStream.read(data))!=-1){
    
    
        outputStream.write(data);
      }
    }catch(IOException e){
    
    
      throw e;
    }finally{
    
    
      if(inputStream != null){
    
    
        inputStream.close();
      }

      if(outputStream != null) {
    
    
        outputStream.close();
      }
    }
  }
}

文件复制jdk9新写法

/**
 * @author : vncuser
 * @created : 2021-03-05
**/

import java.io.*;

public class 文件复制实现{
    
    
  public static void main(String [] args) throws Exception{
    
    
    System.out.println("-------文件复制操作--------");
    File sourceFile = new File("/home/vncuser/.yootk/out.txt");
    File desFile = new File("/home/vncuser/.yootk/copyFile.txt");
    FileInputStream inputStream = null;
    FileOutputStream outputStream = null;
    try{
    
    
      inputStream = new FileInputStream(sourceFile);
      outputStream = new FileOutputStream(desFile);
      byte [] data = new byte[2048];
      int len ;
      while((len =inputStream.read(data))!=-1){
    
    
        outputStream.write(data);
      }
    }catch(IOException e){
    
    
      throw e;
    }finally{
    
    
      if(inputStream != null){
    
    
        inputStream.close();
      }

      if(outputStream != null) {
    
    
        outputStream.close();
      }
    }
  }
}

猜你喜欢

转载自blog.csdn.net/lxyoucan/article/details/114399738