读取和打印 ppm 文件时出现 FileNotFoundException

FileNotFoundException while reading and printing a ppm file

我想编写一个函数来接收 PPM 文件的名称和 returns 包含图像数据的数组。

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)

您的文件路径错误。可以在文件上右击复制路径得到准确的路径。

或者您可以使用此代码,它会调出一个 GUI window 让您选择一个文件。

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();
}