У меня возникает ошибка при воспроизведении звука. По какой-то причине я получаю исключение из-за нулевого указателя. Место и файл я использую как exsist, так и при выводе строки файла я получаю правильный путь к файлу. Нулевой указатель находится на линии .open. Что я делаю не так?NullPointer при воспроизведении звука на Java
package main;
import java.io.File;
import java.io.IOException;
import java.net.URL;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.Clip;
import javax.sound.sampled.LineUnavailableException;
import javax.sound.sampled.UnsupportedAudioFileException;
public class Sound {
Clip background;
public void init() {
try {
String file = new File("").getAbsolutePath() + "\\Sounds\\Pacman_Opening.wav";
System.out.println(file);
background = AudioSystem.getClip();
background.open(AudioSystem.getAudioInputStream(getClass().getResource(file)));
} catch (LineUnavailableException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (UnsupportedAudioFileException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void playBG() {
background.start();
}
public void stopBG() {
background.stop();
}
public static void main(String[] args) {
Sound s = new Sound();
s.init();
s.playBG();
}
}
Это ошибка (первая строка является расположение):
Exception in thread "main" java.lang.NullPointerException
at com.sun.media.sound.WaveFileReader.getAudioInputStream(Unknown Source)
at javax.sound.sampled.AudioSystem.getAudioInputStream(Unknown Source)
at main.Sound.init(Sound.java:21)
at main.Sound.main(Sound.java:42)
Я отредактировал ваше название для вас - не стесняйтесь улучшать его дальше. – Widor
Вы пошли темным путем. «wy das tis no wok» был бы лучше. – Frankie
@Widor Мой плохой, забыл изменить этот титул, это было просто название temp, просто пропустил его изменение. Какая ужасная ошибка, спасибо за ее исправление! – ComputerLocus