Java で、オーディオ ファイルを再生して画像を表示する小さなプログラムをプログラムしました
。最初に、パスを使用して最終的な文字列を作成し、次にファイル オブジェクトを作成しました。
少なくとも、返された配列を「トラック」変数に保存します。これは私のコードです:
private static final String PATH = "../src/audio/";
private static final File FILE = new File(PATH);
tracks = liesAudioDateien(file);
private AudioClip[] liesAudioDateien (File inputFile) {
File[] dateFileArray;
AudioClip[] tracks;
dateFileArray = inputFile.listFiles();
tracks = new AudioClip[dateFileArray.length];
for (int i = 0; i < tracks.length; i++) {
if (dateFileArray[i].isFile()) {
try {
tracks[i] = Applet.newAudioClip(dateFileArray[i].toURL());
} catch (IOException ex) {
System.err.println("Oops!: -- " + ex.toString());
}
}
}
return tracks;
このコードを実行すると、エラーが発生します。
Exception in thread "main" java.lang.NullPointerException
at source.Sound.liesAudioDateien(Sound.java:32)
Sound.java:32:回線です
。tracks = new AudioClip[dateFileArray.length];
絶対パスで試してみると、うまくいきます!私は何を間違っていますか?