การเขียนไฟล์ข้อความ

Java:
การเขียนไฟล์ข้อความ

วิธีทำ:

การใช้ java.nio.file (Standard Library)

Java’s New IO (NIO) package (java.nio.file) ให้วิธีการที่หลากหลายมากขึ้นสำหรับการจัดการกับไฟล์ นี่คือวิธีง่ายๆ ในการเขียนลงไฟล์โดยใช้ Files.write():

import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.Arrays;
import java.util.List;

public class TextFileWriterNIO {
    public static void main(String[] args) {
        List<String> lines = Arrays.asList("บรรทัดที่ 1", "บรรทัดที่ 2", "บรรทัดที่ 3");
        try {
            Files.write(Paths.get("example.txt"), lines);
            System.out.println("เขียนไฟล์สำเร็จแล้ว!");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

ผลลัพธ์:

เขียนไฟล์สำเร็จแล้ว!

การใช้ java.io (Standard Library)

สำหรับวิธีการที่ดั้งเดิมยิ่งขึ้น java.io.FileWriter เป็นตัวเลือกที่ดีสำหรับการเขียนไฟล์ข้อความอย่างง่าย:

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

public class TextFileWriterIO {
    public static void main(String[] args) {
        try (FileWriter writer = new FileWriter("example.txt")) {
            writer.write("สวัสดี, โลก!\n");
            writer.append("นี่คือบรรทัดอื่น.");
            System.out.println("เขียนไฟล์สำเร็จแล้ว!");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

ผลลัพธ์:

เขียนไฟล์สำเร็จแล้ว!

การใช้ Apache Commons IO

ห้องสมุด Apache Commons IO ทำให้การดำเนินการหลายอย่างเรียบง่ายขึ้น รวมถึงการเขียนไฟล์ นี่คือวิธีเขียนข้อความลงไฟล์โดยใช้ FileUtils.writeStringToFile():

ก่อนอื่น, เพิ่มการอ้างอิง (dependency) ลงในโปรเจกต์ของคุณ หากใช้ Maven, ใส่:

<dependency>
  <groupId>org.apache.commons</groupId>
  <artifactId>commons-io</artifactId>
  <version>2.11.0</version> <!-- ตรวจสอบเวอร์ชั่นล่าสุด -->
</dependency>

จากนั้น, ใช้โค้ดดังต่อไปนี้เพื่อเขียนข้อความลงไฟล์:

import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;

public class TextFileWriterCommonsIO {
    public static void main(String[] args) {
        try {
            FileUtils.writeStringToFile(new File("example.txt"), "นี่คือข้อความที่เขียนโดยใช้ Commons IO.", "UTF-8");
            System.out.println("เขียนไฟล์สำเร็จแล้ว!");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

ผลลัพธ์:

เขียนไฟล์สำเร็จแล้ว!