当前位置:首页 > Java

java 如何保存文件

2026-04-09 03:51:29Java

使用 FileOutputStream 保存文件

通过 FileOutputStream 可以将字节数据写入文件。适用于保存二进制数据或文本数据。

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

public class SaveFileExample {
    public static void main(String[] args) {
        String data = "Hello, World!";
        String filePath = "example.txt";

        try (FileOutputStream fos = new FileOutputStream(filePath)) {
            byte[] bytes = data.getBytes();
            fos.write(bytes);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

使用 BufferedWriter 保存文本文件

对于文本文件,使用 BufferedWriter 可以提高写入效率。

java 如何保存文件

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

public class SaveTextFile {
    public static void main(String[] args) {
        String content = "This is a text file.";
        String filePath = "textfile.txt";

        try (BufferedWriter writer = new BufferedWriter(new FileWriter(filePath))) {
            writer.write(content);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

使用 Files 类(Java 7+)

Java 7 引入了 Files 类,提供了更简洁的文件操作方法。

java 如何保存文件

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

public class SaveWithFiles {
    public static void main(String[] args) {
        String content = "Content using Files class";
        String filePath = "files_example.txt";

        try {
            Files.write(Paths.get(filePath), content.getBytes());
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

追加内容到已有文件

如果需要向已有文件追加内容而不是覆盖,可以在 FileWriter 构造函数中设置 append 参数为 true。

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

public class AppendToFile {
    public static void main(String[] args) {
        String additionalContent = "\nAppended line";
        String filePath = "existing_file.txt";

        try (BufferedWriter writer = new BufferedWriter(
                new FileWriter(filePath, true))) {
            writer.write(additionalContent);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

保存对象到文件(序列化)

使用 ObjectOutputStream 可以将 Java 对象序列化后保存到文件。

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;
import java.io.Serializable;

class Person implements Serializable {
    String name;
    int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }
}

public class SaveObject {
    public static void main(String[] args) {
        Person person = new Person("Alice", 30);
        String filePath = "person.ser";

        try (ObjectOutputStream oos = new ObjectOutputStream(
                new FileOutputStream(filePath))) {
            oos.writeObject(person);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

分享给朋友:

相关文章

如何学习java

如何学习java

学习Java的步骤 理解基础知识 从Java的基本语法开始,包括变量、数据类型、运算符、控制流(if-else、循环)等。掌握这些基础概念是后续学习的基石。 学习面向对象编程(OOP) Java是一…

java如何创建类

java如何创建类

创建类的基本语法 在Java中,类通过class关键字定义,语法如下: [访问修饰符] class 类名 { // 成员变量(属性) // 构造方法 // 成员方法 }…

java如何输入数组

java如何输入数组

输入数组的方法 在Java中,可以通过多种方式输入数组,具体取决于输入源(如控制台、文件等)和数组类型(如基本类型或对象类型)。以下是几种常见的方法: 使用Scanner从控制台输入 对于基本数据类…

java中如何输入

java中如何输入

输入方法 在Java中,可以通过多种方式实现输入操作,具体取决于输入来源和需求。以下是几种常见的输入方法: 使用Scanner类 Scanner类是Java中最常用的输入工具,适用于从控制台或文件读…

如何导入java项目

如何导入java项目

导入Java项目的方法 使用IDE导入(如IntelliJ IDEA或Eclipse) 打开IDE后选择导入现有项目,导航至项目根目录(包含pom.xml或build.gradle的文件位置)。IDE…

win7如何配置java环境变量

win7如何配置java环境变量

下载并安装Java 从Oracle官网下载适合的Java Development Kit (JDK)安装包,选择与系统位数(32位或64位)匹配的版本。运行安装程序,按照提示完成安装,默认路径通常为C…