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

107 篇文章 1 订阅

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();
      }
    }
  }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值