当前位置:首页 > Java

如何读写java文件

2026-03-18 04:42:47Java

读取Java文件

使用java.io包中的FileReaderBufferedReader类可以高效读取文本文件内容。BufferedReader提供了逐行读取的方法,适合处理大文件。

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class ReadFile {
    public static void main(String[] args) {
        String filePath = "example.txt";
        try (BufferedReader br = new BufferedReader(new FileReader(filePath))) {
            String line;
            while ((line = br.readLine()) != null) {
                System.out.println(line);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

写入Java文件

通过FileWriterBufferedWriter实现文件写入。BufferedWriter提供write()方法写入内容,newLine()方法添加换行符。使用try-with-resources确保资源自动关闭。

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;

public class WriteFile {
    public static void main(String[] args) {
        String filePath = "output.txt";
        try (BufferedWriter bw = new BufferedWriter(new FileWriter(filePath))) {
            bw.write("Hello, World!");
            bw.newLine();
            bw.write("This is a sample text.");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

处理二进制文件

对于非文本文件(如图片或视频),需使用FileInputStreamFileOutputStream以字节流形式读写。以下示例复制二进制文件:

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

public class BinaryFileCopy {
    public static void main(String[] args) {
        String sourcePath = "source.jpg";
        String destPath = "copy.jpg";
        try (FileInputStream fis = new FileInputStream(sourcePath);
             FileOutputStream fos = new FileOutputStream(destPath)) {
            byte[] buffer = new byte[1024];
            int bytesRead;
            while ((bytesRead = fis.read(buffer)) != -1) {
                fos.write(buffer, 0, bytesRead);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

使用NIO包(Java 7+)

java.nio.file包提供更简洁的API。Files.readAllLines()可一次性读取所有行,Files.write()直接写入内容,适合小文件操作。

如何读写java文件

import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;
import java.io.IOException;

public class NIOFileRead {
    public static void main(String[] args) {
        String filePath = "example.txt";
        try {
            List<String> lines = Files.readAllLines(Paths.get(filePath));
            for (String line : lines) {
                System.out.println(line);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
import java.nio.file.Files;
import java.nio.file.Paths;
import java.io.IOException;
import java.util.Arrays;

public class NIOFileWrite {
    public static void main(String[] args) {
        String filePath = "output.txt";
        try {
            Files.write(Paths.get(filePath), 
                       Arrays.asList("Line 1", "Line 2"));
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

异常处理建议

文件操作必须处理IOException。推荐使用try-with-resources语法自动管理资源,避免手动关闭流导致的资源泄漏。对于大文件,避免一次性读取全部内容,改用流式处理。

标签: 文件java
分享给朋友:

相关文章

java如何

java如何

Java 基础语法 Java 是一种面向对象的编程语言,语法相对严谨。每个 Java 程序必须包含一个 main 方法作为程序入口。以下是一个简单的 Java 程序示例: public class…

java如何使用

java如何使用

Java 基本使用方法 Java 是一种广泛使用的编程语言,适用于开发各种类型的应用程序。以下是 Java 的基本使用方法,包括环境配置、语法基础和常用操作。 安装 Java 开发环境 下载并安装…

java如何打开

java如何打开

安装Java开发环境 下载并安装Java Development Kit (JDK),推荐从Oracle官网或OpenJDK获取最新版本。安装完成后配置环境变量,确保JAVA_HOME和PATH变量正…

php实现文件的下载

php实现文件的下载

PHP 实现文件下载的方法 在 PHP 中实现文件下载功能通常需要设置正确的 HTTP 头信息,并输出文件内容。以下是几种常见的实现方式: 使用 header() 函数强制下载 通过设置 Conte…

java如何react

java如何react

在Java中使用React 要在Java项目中集成React,通常需要将React前端与Java后端结合使用。以下是几种常见的方法: 使用Spring Boot作为后端 Spring Boot是一个…

java如何上传文件

java如何上传文件

使用HttpURLConnection上传文件 在Java中,可以通过HttpURLConnection实现文件上传功能。需要设置请求头为multipart/form-data,并构建包含文件数据的请…