当前位置 主页 > 网站技术 > 代码类 >

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

    栏目:代码类 时间:2019-10-20 06:02

    需求说明

    实际操作过程中,从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();
          }
        }
      }
    }

    运行结果

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持IIS7站长之家。