Я делаю игру в стиле DJ MAX.
Я пытаюсь установить фоновую музыку для основного экрана игры, но здесь я обнаружил проблему.
Когда я передаю путь к файлу в виде URI или строки для создания экземпляра объекта File, обаотлично работает
Однако, когда я пытаюсь подключить объект File к FileInputStream, объект File, имеющий путь String, не работает (URI FILE WORKS PERFECT).Возникает ошибка «Система не может найти указанный путь».Я проверял несколько раз, но путь правильный.
Есть ли причина, по которой я должен передать путь к классу File в качестве URI?
Спасибо за вашу поддержку
Атрибуты
public class Music extends Thread {
private Player player;
private boolean isLoop;
private File file;
private FileInputStream fis;
private BufferedInputStream bis;
Передача пути в виде строки: не работает
public Music(String name, boolean isLoop) {
try {
this.isLoop = isLoop;
file = new File("../musics/adventuresHimitsu.mp3");
fis = new FileInputStream(file);
bis = new BufferedInputStream(fis);
player = new Player(bis);
}catch(Exception e) {
System.out.println(e.getMessage());
}
}
Возникло сообщение об ошибке: .. \ musics \ adventuresHimitsu.mp3 (система не может найти указанный путь) null
Passingпуть как URI: Работает
public Music(String name, boolean isLoop) {
try {
this.isLoop = isLoop;
file = new File(Main.class.getResource("../musics/adventuresHimitsu.mp3").toURI());
fis = new FileInputStream(file);
bis = new BufferedInputStream(fis);
player = new Player(bis);
}catch(Exception e) {
System.out.println(e.getMessage());
}
}