2015-11-29 3 views
-2

Я хочу написать функцию, которая получает имя PPM-файла и возвращает массив, содержащий данные изображения.FileNotFoundException при чтении и печати файла ppm

import.java.io 

public class read { 

    public static void main(String[] args) { 
     int[][][] pic = read("test.ppm"); 
     StdOut.println(pic); 
    } 

    public static int[][][] read (String ppmfile){ 
     StdIn.setInput(ppmfile); 
     int n = StdIn.readInt(); 
     int[][][] data = new int[n][n][n]; 
     for (int i = 0; i < data.length; i++) { 
      for (int j = 0; j < data.length; j++) { 
       for (int k = 0; k < data.length; k++) { 
        data[i][j][k] = StdIn.readInt(); 
       } 
      } 
     } 
     return data; 
    } 
} 

Это код, который я написал, но я получаю ошибку:

java.io.FileNotFoundException: test.ppm (No such file or directory) at java.io.FileInputStream.open0(Native Method) at java.io.FileInputStream.open(FileInputStream.java:195) at java.io.FileInputStream.<init>(FileInputStream.java:138) at java.io.FileInputStream.<init>(FileInputStream.java:93) at StdIn.setInput(StdIn.java:147) at read.read(read.java:10) at read.main(read.java:5)

+0

Вам необходимо указать правильный путь к test.ppm – nullpointer

+0

Где находится файл? – m0skit0

+0

Файл не найден. Какую часть этого вы не понимаете? Имя файла было неправильным, или это не так, как вы сказали. Нечего делать с кодом. – EJP

ответ

1

Ваш путь является неправильным для вашего файла. Вы можете щелкнуть правой кнопкой мыши по файлу и скопировать путь, чтобы получить точный путь.

Или вы можете использовать этот код, который откроет окно GUI, которое позволит вам выбрать файл.

JOptionPane.showMessageDialog(null, "Please choose a file");   
JFileChooser input = new JFileChooser(); 
int a = input.showOpenDialog(null); 
String file = ""; 

if (a == JFileChooser.APPROVE_OPTION) { 
    File selectedFile = input.getSelectedFile(); 
    file = selectedFile.getPath(); 
}