在 Java 中将字符串保存到文件

Rashmi Patidar 2023年1月30日 2021年4月29日
  1. 在 Java 中使用 PrintWriter 类将字符串写入到文件中
  2. 使用 Java7 的 Files 类将字符串写入文件
  3. 使用 Java 中的 FileWriter 类将字符串写入文件
在 Java 中将字符串保存到文件

本文将介绍在 Java 中将字符串写入文件的方法。

在 Java 中使用 PrintWriter 类将字符串写入到文件中

要将字符串写入文件,我们可以使用 PrintWriter 类。该类的构造函数创建一个具有指定名称作为参数的文件。

如果字符串不存在,或者我们无法创建文件,或者在打开或创建文件时发生其他错误,则构造函数将抛出 FileNotFoundException

println() 函数将在文件中打印字符串并终止一行。

close() 方法将关闭流并释放与之关联的系统资源。

package writeStringToFile;

import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.Objects;

public class WriteStringToFile {
    public static void main(String[] args) {
        PrintWriter printWriter = null;
        String textToBeWritten = "Hello";
        {
            try {
                printWriter = new PrintWriter("writerFile.txt");
            } catch (FileNotFoundException e) {
                System.out.println("Unable to locate the fileName: " + e.getMessage());
            }
            Objects.requireNonNull(printWriter).println(textToBeWritten);
            printWriter.close();
        }
    }
}

使用 Java7 的 Files 类将字符串写入文件

Files 类仅包含对文件,目录或其他类型的文件进行操作的静态方法。write() 方法将字节写入文件。选项参数指定如何创建或打开文件。如果不存在任何选项,则此方法的工作方式就像已经存在 CREATETRUNCATE_EXISTINGWRITE 选项一样。

该方法有两个参数,pathbyte

path 指定目标文件的路径。getBytes() 方法将字符串转换为 Byte 格式。

如果在写入或创建文件时发生错误,该方法将引发 IOException

package writeStringToFile;

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

public class WriteStringToFileJava7 {
    public static void main(String[] args) throws IOException {
        String contentToWrite = "Hello File!";
        String path = "C:\IdeaProjects\JavaProblems\src\main\java\writeStringToFile\target\targetFile.txt";
        Files.write(Paths.get(path), contentToWrite.getBytes());
    }
}

使用 Java 中的 FileWriter 类将字符串写入文件

BufferedWriter 类创建一个使用默认大小的输出缓冲区的缓冲区字符输出流。它以任何 writer 对象为参数。FileWriter 类构造函数采用文件名,该文件名是存储字符串的目标。write 方法将文本写入对象中的关联文件。当文件不可放置时,此方法将引发 IOException

现在,在 finally 块中,应该释放用于输入和输出操作的资源。close 方法还会抛出 IOException 类,因此我们应该在 try-catch 块中使用 close 函数,或者在父方法中添加 throws 子句。

package writeStringToFile;

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

public class WriteToFileUsingFileWriter {
    public static void main(String[] args) throws IOException {
        BufferedWriter bufferedWriter = null;
        try {
            bufferedWriter = new BufferedWriter(new FileWriter("targetFile"));
            bufferedWriter.write("Hey! Content to write in File");
            
        } catch (IOException e) {
            System.out.println("Exception occurred: " + e.getMessage());

        } finally {
            if (bufferedWriter != null)
                bufferedWriter.close();
        }
    }
}
Rashmi Patidar avatar Rashmi Patidar avatar

Rashmi is a professional Software Developer with hands on over varied tech stack. She has been working on Java, Springboot, Microservices, Typescript, MySQL, Graphql and more. She loves to spread knowledge via her writings. She is keen taking up new things and adopt in her career.

LinkedIn

相关文章 - Java String

相关文章 - Java File