亲宝软件园·资讯

展开

Java实现文件读取和写入过程解析

人气:0

需求说明

实际操作过程中,从D盘根目录下的ak.txt读取文件写入D盘根目录下的hello.txt文件内

实现思路

写两个方法,一个用于读取目标文件,一个用于写入目标文件--详情见代码注释

代码内容

文件读取和写入练习

package com.io;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

/**
 * @auther::9527
 * @Description: 尝试
 * @program: shi_yong
 * @create: 2019-07-31 17:11
 */
public class Tyy {
  public static void main(String[] args) {
    //实例化对象
   Tyy tyy = new Tyy();
   //用一个byte[]接受数据
   byte[] bytes=tyy.read("d:/ak.txt");
   //将接受到的数据传入写入方法
   tyy.write("d:/hello.txt",bytes);

  }

  //读取方法,设定传参是文件的String路径,返回一个byte[]数组
  public byte[] read(String str) {
    byte[] bytes = new byte[0];
    FileInputStream fis = null;
    try {
      fis = new FileInputStream(str);
      int read;
      bytes = new byte[1024000];
      System.out.println("内容读取中...........");
      while ((read = fis.read(bytes)) != -1) {
        for (int i = 0; i < read; i++) {
          System.out.print((char) bytes[i]);
        }
        System.out.println("\n内容读取完毕");
      }
      return bytes;
    } catch (FileNotFoundException e) {
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    } finally {
      try {
        fis.close();
      } catch (IOException e) {
        e.printStackTrace();
      }
    }
    return bytes;
  }

  //写入方法,需要两个参数,一是写入路径,一是写入内容
  public void write(String string,byte[] bytes) {
    System.out.println("文件写入中-----");
    FileOutputStream fos = null;

    try {
      fos = new FileOutputStream(string);
      try {
        fos.write(bytes);
      } catch (IOException e) {
        e.printStackTrace();
      }
      System.out.println("文件写入完毕");

    } catch (FileNotFoundException e) {
      e.printStackTrace();
    }finally {
      try {
        fos.close();
      } catch (IOException e) {
        e.printStackTrace();
      }
    }
  }
}

运行结果

您可能感兴趣的文章:

加载全部内容

相关教程
猜你喜欢
用户评论