Javaでファイルを削除する方法を現役エンジニアが解説【初心者向け】

初心者向けにJavaでファイルを削除する方法について解説しています。java.io.Fileクラスのdeleteメソッドを使うと、ファイルの削除を行えます。ディレクトリ配下の全てのファイルを削除する方法をみていきましょう。

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

Javaでファイルを削除する方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

 

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

 

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

 

田島悠介

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

大石ゆかり

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

田島悠介

ファイルを削除する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

目次

 

deleteメソッドとは

deleteメソッドとは、java.io.Fileクラスに実装されているメソッドで、使用すればファイルを削除できます。

戻り値はboolean、削除できればtrue、できなければfalseが戻ってくるでしょう。

 

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

deleteメソッドの使い方

deleteメソッドは以下の形式で使用できます。

import java.io.File;

File 変数 = new File(削除したいファイルのパス);
変数.delete();

 

Fileクラスのオブジェクトを作成する際に、削除したいファイルのパスを設定し、deleteメソッドで削除することが可能です。

 

ディレクトリ配下の全てのファイルを削除する方法

deleteメソッドは1つのファイルしか削除することはできません。

しかし、ディレクトリ配下のすべてのファイルを削除したいときもあります。

ディレクトリ配下のファイルを全て削除するには以下のように記述しましょう。

 

import java.io.File;

File ディレクトリ = new File(全てのファイルを削除したいディレクトリのパス);
File[] 変数 = ディレクトリ.listFiles();
for (int i = 0; i < 変数.length; i++) {
  if (変数[i].exists() && 変数[i].isFile()) {
    変数[i].delete();
  }
}

 

Fileクラスのオブジェクトを作成する際にディレクトリのパスを作成すると、listFilesメソッドで配下のファイルが格納された配列を取得することが可能です。

繰り返し処理を使い全てのファイルを削除できます。

 

実際に書いてみよう

実際にdeleteメソッドを使ってファイルを削除してみましょう。

 

プログラムソースコード

 

import java.io.File;

public class SampleClass {

  public static void main(String[] args) {

    File dir = new File("C:/Users/sample");
    File[] files = dir.listFiles();
    for (int i = 0; i < files.length; i++) {
      if (files[i].exists() && files[i].isFile()) {
        files[i].delete();
        System.out.println("ファイル削除");
      }
    }
  }
}

 

実行結果

ファイル削除

ファイル削除

今回sampleディレクトリの中にファイルを2つ入れた状態で実行したので、実行結果はファイル削除を2回出力しています。

またsampleディレクトリからもファイルが削除されました。

 

まとめ

今回はJavaでファイルを削除する方法について解説しました。

 

執筆してくれたメンター

メンターSさん

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

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

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

 

大石ゆかり

Javaでファイルを削除する方法がよく分かったので良かったです!

田島悠介

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

大石ゆかり

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

 

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

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