HOWTO · Java

システムが Java で指定されたファイルを見つけられない

このチュートリアルでは、Java でエラーを解決する方法を示します。指定されたファイルが見つかりません。

このページの内容

このチュートリアルでは、Java で指定されたファイルが見つかりませんというエラーを解決する方法を示します。

Java での指定されたファイルが見つかりませんというエラーを修正する

Java エラー 指定されたファイルが見つかりません は、読み込んでいるファイルがディレクトリにない場合、またはファイル名が正しくない場合に発生します。 これは Java IO パッケージからの例外でもあり、システムが指定された名前のファイルを見つけられない場合にスローされます。

これと同じエラーをスローする例を試してみましょう。

package delftstack;

import java.io.*;

public class Example {
  public static void main(String[] args) {
    try {
      File NewFile = new File("NewDelftstack.txt");
      System.out.println(NewFile.getCanonicalPath());
      FileInputStream File_Input_Stream = new FileInputStream(NewFile);

      DataInputStream Data_Input_Stream = new DataInputStream(File_Input_Stream);
      BufferedReader Buffered_Reader = new BufferedReader(new InputStreamReader(Data_Input_Stream));
      String line;

      while ((line = Buffered_Reader.readLine()) != null) {
        System.out.println(line);
      }
      Data_Input_Stream.close();
    } catch (Exception e) {
      System.err.println("Error: " + e.getMessage());
    }
  }
}

ファイル NewDelftstack.txt はディレクトリにないため、上記のコードはエラーをスローします。 出力を参照してください:

C:\Users\Sheeraz\eclipse-workspace\Demos\NewDelftstack.txt
Error: NewDelftstack.txt (The system cannot find the file specified)

この問題を解決するには、正しいファイル名とパスを入力したことを確認してください。 Java でファイルのリストを確認することもできます。これは、正しい名前とパスを入力した場合に役立ちます。

例を参照してください:

package delftstack;

import java.io.*;

public class Example {
  public static void main(String[] args) {
    try {
      File file = new File(".");
      for (String fileNames : file.list()) System.out.println(fileNames);
      File NewFile = new File("NewDelftstack.txt");
      System.out.println(NewFile.getCanonicalPath());
      FileInputStream File_Input_Stream = new FileInputStream(NewFile);

      DataInputStream Data_Input_Stream = new DataInputStream(File_Input_Stream);
      BufferedReader Buffered_Reader = new BufferedReader(new InputStreamReader(Data_Input_Stream));
      String line;

      while ((line = Buffered_Reader.readLine()) != null) {
        System.out.println(line);
      }
      Data_Input_Stream.close();
    } catch (Exception e) {
      System.err.println("Error: " + e.getMessage());
    }
  }
}

上記のコードは、ディレクトリ内のファイルのリストを表示します。ファイルを探して、コード内のファイル名とパスを修正できます。 出力を参照してください:

.classpath
.project
bin
Delftstack.png
delftstack.txt
delftstack.xml
delftstack.zip
src
C:\Users\Sheeraz\eclipse-workspace\Demos\NewDelftstack.txt
Error: NewDelftstack.txt (The system cannot find the file specified)

ディレクトリに NewDelftstack.txt という名前のファイルはありません。 この名前でファイルを作成するか、コードでファイル名を変更できます。

例を参照してください:

package delftstack;

import java.io.*;

public class Example {
  public static void main(String[] args) {
    try {
      File NewFile = new File("Delftstack.txt");
      System.out.println(NewFile.getCanonicalPath());
      FileInputStream File_Input_Stream = new FileInputStream(NewFile);

      DataInputStream Data_Input_Stream = new DataInputStream(File_Input_Stream);
      BufferedReader Buffered_Reader = new BufferedReader(new InputStreamReader(Data_Input_Stream));
      String line;

      while ((line = Buffered_Reader.readLine()) != null) {
        System.out.println(line);
      }
      Data_Input_Stream.close();
    } catch (Exception e) {
      System.err.println("Error: " + e.getMessage());
    }
  }
}

ディレクトリにファイル Delftstack.txt が含まれているため、コードは適切に機能します。 出力を参照してください:

C:\Users\Sheeraz\eclipse-workspace\Demos\delftstack.txt
Hello, This is a new text file from delftstack.com after overwriting the previous file.