[英]Wav file arrayList. Why does this line not work? Java
我有一個字符串arraylist,該列表一個接一個地遍歷,它應該播放wav文件。
在這一行上“ AudioInputStream ais = AudioSystem.getAudioInputStream(music(x));” 音樂無法識別,它指出“找不到符號”。 同樣(music.get(x))不起作用。 然后在整行下划線標明其不適用。 我需要做什么? 謝謝。
String trackName;
ArrayList<String> music = new ArrayList();
music.add("c:\\01.wav");
music.add("c:\\02.wav");
music.add("c:\\03.wav");
music.add("c:\\04.wav");
byte[] buffer = new byte[4096];
for(int x = 0; x < music.size(); x++){
try{
AudioInputStream ais = AudioSystem.getAudioInputStream(music(x));
trackName = "The Current Track is " + music.get(x);
System.out.println(trackName);
AudioFormat format = ais.getFormat();
SourceDataLine line = AudioSystem.getSourceDataLine(format);
line.open(format);
line.start();
while (ais.available() > 0) {
int len = ais.read(buffer);
line.write(buffer, 0, len);
}
line.drain(); //wait for the buffer to empty before closing the line
line.close();
}
catch (Exception e) {
e.printStackTrace();
}
}
}
嘗試更改您的行:
AudioInputStream ais = AudioSystem.getAudioInputStream(music(x));
至:
AudioInputStream ais = AudioSystem.getAudioInputStream(new File(music.get(x)));
AudioSystem不會將字符串作為參數來獲取音頻輸入流。 它采用了我上面演示的InputStream , URL或File 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.