java读写文件详解(java文件读取和写入)

2023年 7月 30日 74.7k 0

在 Java 中,有多种方法可以用来读写文件,本文将详细介绍如何使用 Java 标准库中的类和方法来执行文件读写操作。

我们将重点讨论以下几种方法:

  • 使用 File
  • 使用 FileInputStreamFileOutputStream
  • 使用 BufferedReaderBufferedWriter
  • 使用 Files 类和 Path 接口
  • 使用 Scanner 类和 PrintWriter
  • 1. 使用 File

    Java 中的 File 类可以用来表示文件和目录路径名。它提供了一些用于操作文件和目录的方法,如创建、删除、重命名等。然而,File 类不支持直接读写文件内容。

    图片[1]-java读写文件详解(java文件读取和写入)-不念博客

    2. 使用 FileInputStreamFileOutputStream

    FileInputStreamFileOutputStream 类分别用于从文件读取数据和向文件写入数据。

    它们是字节流类,可以用于读写任何类型的文件,包括文本文件和二进制文件。

    示例代码:

    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    
    public class ReadWriteFile {
        public static void main(String[] args) {
            String inputFile = "input.txt";
            String outputFile = "output.txt";
    
            try (FileInputStream fis = new FileInputStream(inputFile);
                 FileOutputStream fos = new FileOutputStream(outputFile)) {
    
                int data;
                while ((data = fis.read()) != -1) {
                    fos.write(data);
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

    3. 使用 BufferedReaderBufferedWriter

    BufferedReaderBufferedWriter 类提供了更高效的文本文件读写方法。

    它们分别包装了 FileReaderFileWriter 类,提供了缓冲功能。

    示例代码:

    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.IOException;
    
    public class ReadWriteFile {
        public static void main(String[] args) {
            String inputFile = "input.txt";
            String outputFile = "output.txt";
    
            try (BufferedReader br = new BufferedReader(new FileReader(inputFile));
                 BufferedWriter bw = new BufferedWriter(new FileWriter(outputFile))) {
    
                String line;
                while ((line = br.readLine()) != null) {
                    bw.write(line);
                    bw.newLine();
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

    相关文章

    JavaScript2024新功能:Object.groupBy、正则表达式v标志
    PHP trim 函数对多字节字符的使用和限制
    新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
    使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
    为React 19做准备:WordPress 6.6用户指南
    如何删除WordPress中的所有评论

    发布评论