JavaのFileOutputStreamクラスでファイルに書き込む方法を現役エンジニアが解説【初心者向け】

初心者向けにJavaのFileOutputStreamクラスを使ってファイルに書き込む方法について解説しています。Javaでファイルにデータを書き込むにはFileOutputStreamクラスを使い、動作を確認してみましょう。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事が4,000以上あります。現役エンジニアの方はこちらをご覧ください。

JavaのFileOutputStreamクラスを使ってファイルに書き込む方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

 

Javaについてそもそもよく分からないという方は、Javaとは何なのか解説した記事を読むとさらに理解が深まるでしょう。

 

なお本記事は、TechAcademyのオンラインブートキャンプJava講座の内容をもとに作成しています。

 

田島悠介

今回は、Javaに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

FileOutputStreamクラスを使ってファイルに書き込む方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

目次

 

FileOutputStreamクラスとは

FileOutputStreamクラスとは、java.ioパッケージに存在するクラスです。

Javaでファイルにバイトのデータを書き込む際に利用します。

 

[PR] Javaで挫折しない学習方法を動画で公開中

FileOutputStreamクラスの使い方

FileOutputStreamクラスをを使う時は、以下のように記述しましょう。

 

import java.io.FileOutputStream;

FileOutputStream 変数 = new FileOutputStream(書き込むファイルのパス);

 

インスタンスを生成する際に書き込みたいファイルのパスを設定することで、以降そのファイルにバイトのデータを書き込むことができます。

 

ファイルに書き込む方法

ファイルに値を書き込むには以下の形式で記述します。

 

import java.io.FileOutputStream;

FileOutputStream 変数 = new FileOutputStream(書き込むファイルのパス);
変数.write(バイトのデータ);
変数.flush();
変数.close();

 

バイトデータを書き込むときにはwriteメソッドを使い、書き込んだデータを反映させるにはflushメソッドを用いましょう。

そして。ファイルに書き込んでいるため、書き込んだファイルを閉じる処理が必要となり、そこでcloseメソッドを使用します。

以上の順番で記述することでバイトのデータをファイルに書き込むことが可能です。

 

実際に書いてみよう

実際にバイトのデータをFileOutputStreamクラスを利用して書き込んでみましょう

 

プログラムソースコード

 

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

public class Sample {

  public static void main(String[] args) {

    FileOutputStream fos;
    try {
      fos = new FileOutputStream("C:/Users/sample.txt");

      fos.write(84);
      fos.write(69);
      fos.write(83);
      fos.write(84);

      fos.flush();

      System.out.println("書き込み完了");
      fos.close();
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

 

実行結果

書き込み完了

 

またsample.txtには「TEST」と書き込まれました。

 

まとめ

今回はJavaのFileOutputStreamクラスを使ってファイルに書き込む方法について解説しました。

 

執筆してくれたメンター

メンターSさん

システムエンジニアとしてこれまで行政システムや医療用システムの保守、開発に携わりました。

JavaやPython、PHP、Kotlinなど様々な言語での開発経験があります。

TechAcademyではJavaコース、Pythonコース、AIコースなど7コースを担当しています。

 

大石ゆかり

JavaのFileOutputStreamクラスを使ってファイルに書き込む方法がよく分かったので良かったです!

田島悠介

ゆかりちゃん、これからも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間で、JavaやServletの技術を使ってWebアプリケーション開発を習得できる、オンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。