Java
 Computer >> コンピューター >  >> プログラミング >> Java

Javaでファイルに書き込む5つの方法|サンプルコード付きで解説

この記事では、Javaを使ってファイルに書き込む5つの異なる方法を紹介します。各コード例では、書き込み前にファイルが存在するかどうかを確認し、存在しない場合には新しくファイルを作成するようになっています。

BufferedWriterを使ってファイルに書き込む

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

public class WriteToFile {
    public static void main( String[] args ) {
        try {
            String content = "Content to write to file";
            // ファイル名とパス
            File file = new File("writefile.txt");

            if(!file.exists()){
                file.createNewFile();
            }

            FileWriter fw = new FileWriter(file);

            BufferedWriter bw = new BufferedWriter(fw);
            bw.write(content);
            bw.close();

        } catch(IOException ex) {
            System.out.println("Exception occurred:");
            ex.printStackTrace();
        }
    }
}

補足:
既存のファイルに上書きせず追記したい場合は、FileWriterのコンストラクタにtrueを渡して初期化します。

FileWriter fw = new FileWriter(file, true);
  • Javaでファイルを作成する方法
  • Javaでカレントワーキングディレクトリを取得する方法

PrintWriterを使ってファイルに書き込む

import java.io.*;

public class WriteToFile {
    public static void main( String[] args ) {
        try {
            String content = "Content to write to file";
            // ファイル名とパス
            File file = new File("writefile.txt");

            if(!file.exists()){
                file.createNewFile();
            }

            FileWriter fw = new FileWriter(file);

            PrintWriter bw = new PrintWriter(fw);
            bw.write(content);
            bw.close();

        } catch(IOException ex) {
            System.out.println("Exception occurred:");
            ex.printStackTrace();
        }
    }
}

FileOutputStreamを使ってファイルに書き込む

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

public class WriteToFile {
    public static void main( String[] args ) {
        try {
            String content = "Content to write to file";
            // ファイル名とパス
            File file = new File("writefile.txt");

            if(!file.exists()){
                file.createNewFile();
            }

            FileOutputStream outStream = new FileOutputStream(file);
            byte[] strToBytes = content.getBytes();
            outStream.write(strToBytes);

            outStream.close();

        } catch(IOException ex) {
            System.out.println("Exception occurred:");
            ex.printStackTrace();
        }
    }
}

Filesクラスを使ってファイルに書き込む

Java 7以降で利用できるNIOのFilesクラスを使うと、わずか数行のコードでファイルへの書き込みが可能です。最もシンプルな方法の一つです。

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

public class WriteToFile {
    public static void main( String[] args ) {
        Path path = Paths.get("writefile.txt");
        String content = "Content to write to file";

        try {
            byte[] bytes = content.getBytes();
            Files.write(path, bytes);
        } catch(IOException ex) {
            System.out.println("Exception occurred:");
            ex.printStackTrace();
        }
    }
}

DataOutputStreamを使ってファイルに書き込む

import java.io.*;

public class WriteToFile {
    public static void main( String[] args ) {
        String content = "Content to write to file";

        try {
            File file = new File("writefile.txt");

            if(!file.exists()){
                file.createNewFile();
            }

            FileOutputStream fos = new FileOutputStream(file);
            BufferedOutputStream bos = new BufferedOutputStream(fos);

            DataOutputStream dataOutStream = new DataOutputStream(bos);
            dataOutStream.writeUTF(content);
            dataOutStream.close();

        } catch(IOException ex) {
            System.out.println("Exception occurred:");
            ex.printStackTrace();
        }
    }
}

用途に応じて使い分けることで、より効率的で安全なファイル操作が可能になります。テキストデータの単純な書き込みにはBufferedWriterやFilesクラス、バイナリデータやプリミティブ型の書き込みにはDataOutputStreamなどが適しています。

  1. JavaでJSONファイルを作成する方法をわかりやすく解説

    JSON(JavaScript Object Notation)は、人間が読みやすい形式でデータを交換するために設計された、軽量なテキストベースのオープン標準フォーマットです。JSONの記法は、C、C++、Java、Python、Perlなど、多くのプログラミング言語に精通したプログラマーにとって馴染み深いものとなっています。 JSONドキュメントのサンプル 以下は、書籍情報を格納した典型的なJSONドキュメントの例です。 { book: [ { id: 01, language: Java, ed

  2. Rubyでファイルを読み書きする方法を実例つきで徹底解説

    Rubyでファイルの読み書きができるようになると、ファイルからデータを抽出したり、新しいファイルを作成したり、必要な情報を素早く見つけたりできるようになります。この記事では、Rubyにおけるファイル操作の基本を、実際のコード例とともにわかりやすく解説します。 この記事で学べること Rubyでファイルを読み込む方法 Rubyでファイルに書き込む方法 覚えておきたいFileクラスのメソッド ディレクトリ操作の基礎 FileUtilsモジュールの使い方 まとめ それでは始めましょう! Rubyでファイルを読み込む方法 Rubyでファイルを読み込む基本的な流れは、次の3ステップです。 op