Java详细讲解文件的读写操作方法

Java详细讲解文件的读写操作方法

文件读取操作

在Java中,可以使用FileInputStream和BufferedInputStream,以及Reader类中的FileReader和BufferedReader类来读取文件。下面是一个读取TXT文件的示例代码:

import java.io.*;

public class FileReadDemo {
   public static void main(String args[])throws IOException{
      // 指定文件名
      File file = new File("file.txt");
      // 创建FileInputStream对象
      FileInputStream inputStream = new FileInputStream(file);
      // 创建BufferedReader对象
      BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
      String line;
      while ((line = reader.readLine()) != null) {
          // 输出每行内容
          System.out.println(line);
      }
      // 关闭输入流和reader
      reader.close();
      inputStream.close();
   }
}

这个例子中,我们使用了FileInputStream、BufferedReader和File等Java类来读取TXT文件。

文件写入操作

可以使用FileOutputStream和Writer类中的FileWriter和BufferedWriter类来进行文件写入操作。下面是一个将文本写入文件的示例代码:

import java.io.*;

public class FileWriteDemo {
    public static void main(String[] args) {
        String str = "测试文本内容";
        File file = new File("file.txt");
        try (FileOutputStream fos = new FileOutputStream(file,true);
             OutputStreamWriter osw = new OutputStreamWriter(fos, "UTF-8");
             BufferedWriter writer = new BufferedWriter(osw)) {
            writer.write(str);
            writer.newLine();
            writer.flush();
            System.out.println("写入成功!");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

在这个例子中,我们使用了FileOutputStream、BufferedWriter和File等Java类来进行文件写入操作。

示例

我们可以使用上述读取和写入操作将一个文件复制到另一个文件中。下面是一个完整的文件复制程序的示例代码:

import java.io.*;

public class FileCopyDemo {
    public static void main(String[] args) {
        String sourcePath = "source.txt";
        String targetPath = "target.txt";

        File sourceFile = new File(sourcePath);
        File targetFile = new File(targetPath);

        char[] buffer = new char[1024];

        try (Reader reader = new FileReader(sourceFile);
             BufferedReader br = new BufferedReader(reader);
             OutputStreamWriter fw = new OutputStreamWriter(new FileOutputStream(targetFile), "UTF-8");
             BufferedWriter bw = new BufferedWriter(fw)) {
            String line;
            while ((line = br.readLine()) != null) {
                bw.write(line);
                bw.newLine();
            }
            System.out.println("文件复制成功!");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

在这个示例中,我们使用了File、FileReader、FileWriter、BufferedReader和BufferedWriter等Java类。该程序将一份源文件中的所有内容复制到目标文件中。

除了上面的示例之外,还可以使用Java NIO来进行文件读取和写入操作,其中包括FileChannel、Charset和ByteBuffer等Java NIO类。这些类提供了更高效和更定制化的文件操作方式。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java详细讲解文件的读写操作方法 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • 5分钟快速了解String.trim()到底做了什么事

    当我们使用Java字符串时,我们可以使用trim()方法来去除字符串的首尾空格。 一、什么是String.trim()方法? String.trim()方法属于Java String类的一个方法,用于去除字符串的首尾空格。该方法返回一个新的字符串,而不是修改原始字符串。 二、String.trim()方法的使用 在Java编程中,我们可以使用String.t…

    Java 2023年5月20日
    00
  • jsp 不支持EL表达式,解决办法

    针对“jsp不支持EL表达式,解决办法”的问题,整理了如下的完整攻略: 问题描述 JSP是一种Java Web应用程序的开发技术,使用JSP可以更方便地与HTML, CSS, JavaScript等前端技术协同开发;而EL表达式是JSP页面中经常使用的一种表达式语言,但是有时候我们会发现jsp页面不支持EL表达式,例如EL表达式的语法无法正确解析,页面中无法…

    Java 2023年6月15日
    00
  • 几道java循环练习题(适合新人)

    首先,对于这篇“几道java循环练习题(适合新人)”文章,它包含了多个练习题,都是基于Java的循环语法实现的。对于初学者来说,可以通过熟悉这些练习题,掌握Java的循环语法。 下面,我们来逐个解析。 第一道题:九九乘法表 这道题要求我们输出九九乘法表。我们可以使用双重循环来实现,外层循环控制行数,内层循环控制列数。 for (int i = 1; i &l…

    Java 2023年5月24日
    00
  • Java文件操作实例详解

    Java文件操作实例详解 一、文件操作的概述 文件操作是指程序通过对文件或文件夹的读、写、删除等操作实现对数据的存储,读取与处理。Java提供了丰富的IO库,可以实现大量的文件操作。本文将介绍Java文件操作的基本流程和常见用法。 二、文件操作的基本流程 Java对文件操作的流程主要包括以下步骤: 判断文件或文件夹是否存在; 创建文件或文件夹; 读取或写入文…

    Java 2023年5月20日
    00
  • AJAX SpringBoot 前后端数据交互的项目实现

    讲解”AJAX SpringBoot前后端数据交互的项目实现”的步骤及示例: 1. 准备工作 首先,需要搭建好Spring Boot的环境,并在其中添加对thymeleaf和web模块的支持。若需要使用ORM,还需要添加对JPA的支持。 在前端部分,需要准备好HTML、CSS和JS等组件。 2. 建立一个Spring Boot项目 使用Spring Init…

    Java 2023年5月20日
    00
  • 老生常谈计算机中的编码问题(必看篇)

    老生常谈计算机中的编码问题(必看篇) 简介 计算机中的编码问题是计算机领域长期存在的老生常谈问题之一。这个问题的本质是计算机内部和外部传输的信息都需要以某种编码方式呈现,而不同的编码方式之间可能存在互相转换的问题,容易引起信息传输和解读上的困难。 常见编码方式 常见的计算机编码方式包括ASCII编码、Unicode编码和UTF-8编码等。其中: ASCII编…

    Java 2023年5月20日
    00
  • Apache Shiro 使用手册(三) Shiro授权

    Shiro授权是一个非常重要的部分,它定义了谁可以访问应用程序中的哪些资源。本文将介绍如何使用Shiro进行授权。 什么是Shiro授权? Shiro授权是指确定哪些用户可以访问应用程序中的哪些资源。一般来说,授权是在通过身份验证后给定的,如果身份验证已经将用户与特定角色相关联,则可以使用角色来进行授权。此外,还可以使用基于权限的授权方式。 Shiro授权处…

    Java 2023年6月15日
    00
  • 使用Java实现简单的server/client回显功能的方法介绍

    首先,在Java中实现简单的server/client回显功能需要经过以下步骤: 创建ServerSocket并绑定端口号,等待客户端连接。 创建Socket对象并连接服务器。 使用输入输出流向客户端发送和接收数据。 在服务器端处理客户端发送的数据并将其回显给客户端。 下面详细介绍这些步骤。 一、创建ServerSocket并绑定端口号 在Java中,可以使…

    Java 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部