FileNotFoundException, файл существует Java [закрыто]
У меня очень странная проблема, я пытаюсь воспроизвести некоторые MP3-файлы с некоторым Java-кодом и JLayer. У меня есть метод настройки для генерации пути к файлу, но это доставляет мне массу горя. Вот оператор return (и весь код, включенный в метод):
private static String findSoundFile(String numSeq)
{
return "file:///Users/user/Desktop/FinishedPhone/" + numSeq + ".mp3"
}
У меня есть набор, возможно, ~ 150 mp3-файлов, все с именами 1.mp3, 2.mp3 и т. Д. Они достигают примерно 156 (между ними не хватает некоторых). Основываясь на вводе пользователем трехзначного кода, он воспроизводит один из звуков. Этот код работаетбезотказно для чего-либо между 1-99, это когда вы добираетесь до 100, где он перестает работать. Когда пользователь набирает 100 или 110 или что-то еще, Java выдает исключение FileNotFoundException. Уверяю вас, файл там. Вот код, который использует путь к файлу, возвращаемый findSoundFile:
public static void processNumberSequence(String numSeq) throws IOException
{
if (numSeq != "")
{
String soundLoc = findSoundFile(numSeq);
File file = new File(soundLoc);
System.out.println("System can read: " + file.canRead());
System.out.println(soundLoc);
SoundPlayer soundToPlay = new SoundPlayer(soundLoc);
soundToPlay.play();
}
}
Это становится более странным, когда я заполняю пространство, которое должен заполнить numSeq, вот так:
private static String findSoundFile(String numSeq)
{
return "file:///Users/user/Desktop/FinishedPhone/110.mp3";
}
Код выше, работает нормально, воспроизводит звук без зависания. Любые идеи будут с благодарностью, и, пожалуйста, спросите, есть ли путаница.
Трассировка стека:
java.io.FileNotFoundException: /Users/user/Desktop/FinishedPhone/111.mp3 (No such file or directory)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:120)
at java.io.FileInputStream.<init>(FileInputStream.java:79)
at sun.net.www.protocol.file.FileURLConnection.connect(FileURLConnection.java:70)
at sun.net.www.protocol.file.FileURLConnection.getInputStream(FileURLConnection.java:161)
at java.net.URL.openStream(URL.java:1010)
at SoundPlayer.play(SoundPlayer.java:26)
at SerialProcessor.processNumberSequence(SerialProcessor.java:37)
at SerialTest.serialEvent(SerialTest.java:98)
at gnu.io.RXTXPort.sendEvent(RXTXPort.java:732)
at gnu.io.RXTXPort.eventLoop(Native Method)
at gnu.io.RXTXPort$MonitorThread.run(RXTXPort.java:1575)
ls -l одного из файлов:
-rw-r--rw- 1 user staff 432923 Feb 27 14:15 /Users/user/Desktop/FinishedPhone/111.mp3
ls -l для одного до 100:
-rw-r--rw- 1 user staff 480570 Feb 25 20:43 /Users/user/Desktop/FinishedPhone/99.mp3