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

作者:小龙_T无限 时间:2023-06-28 11:35:36 

需求说明

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

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

运行结果

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

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

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

来源:https://www.cnblogs.com/twuxian/p/11278692.html

标签:java,文件,读取,写入
0
投稿

猜你喜欢

  • Unity实现VR中在黑板上写字效果

    2021-08-04 20:11:11
  • Java 多线程并发编程提高数据处理效率的详细过程

    2021-06-29 04:19:39
  • RocketMQ生产者如何规避故障Broker方式详解

    2022-06-23 04:36:10
  • SpringMVC源码解读之HandlerMapping

    2023-07-23 22:18:05
  • Java日常练习题,每天进步一点点(50)

    2022-05-30 13:56:08
  • java -jar设置添加启动参数实现方法

    2022-04-26 21:05:37
  • Spring Boot非Web项目运行的方法

    2021-07-23 13:05:32
  • Flutter质感设计之持久底部面板

    2021-10-19 07:54:18
  • 浅析Disruptor高性能线程消息传递并发框架

    2023-02-26 14:09:01
  • 关于SpringCloud的微服务结构及微服务远程调用

    2021-11-06 20:11:45
  • SpringBoot集成Beetl后统一处理页面异常的方法

    2023-11-10 19:57:55
  • Flutter实现固定header底部滑动页效果示例

    2022-06-15 06:31:05
  • Java 中的垃圾回收机制详解

    2023-01-11 19:32:34
  • SpringBoot整合Apollo配置中心快速使用详解

    2022-12-25 17:00:34
  • java15新功能的详细讲解

    2023-08-23 04:40:21
  • Java web项目中的强制登录功能实现代码

    2023-09-14 08:26:18
  • Android实现照片墙效果的实例代码

    2023-01-20 16:53:37
  • 快速了解Maven

    2022-10-22 20:18:33
  • Android实现页面跳转的全过程记录

    2023-08-16 21:06:08
  • C#操作XML文件实例汇总

    2023-03-26 03:55:08
  • asp之家 软件编程 m.aspxhome.com