| 查看: 592 | 回复: 0 | ||
wangjing1377金虫 (小有名气)
|
[求助]
Java中添加音频文件 总是出错
|
|
package com.test2; import java.io.*; //import javax.sound.sampled.*; import javax.sound.sampled.AudioFormat; import javax.sound.sampled.AudioInputStream; import javax.sound.sampled.AudioSystem; import javax.sound.sampled.DataLine; import javax.sound.sampled.SourceDataLine; public class TestAudio { public static void main(String[] args) { // TODO Auto-generated method stub //1.先创建一个AePlayWave对象实例 AePlayWave apw = new AePlayWave("d:\\111.wav\\" ;//2.启动该线程并播放 apw.start(); } } //播放声音的类 class AePlayWave extends Thread { private String filename; public AePlayWave(String wavfile) { filename = wavfile; } public void run(){ File soundFile=new File(filename); AudioInputStream audioInputStream = null; try{ audioInputStream =AudioSystem.getAudioInputStream(soundFile); }catch(Exception e1){ e1.printStackTrace(); return; } AudioFormat format = audioInputStream.getFormat(); SourceDataLine auline=null; DataLine.Info info=new DataLine.Info(SourceDataLine.class, format); try{ auline = (SourceDataLine) AudioSystem.getLine(info); auline.open(format); }catch(Exception e){ e.printStackTrace(); return; } auline.start(); int nBytesRead = 0; //这是缓冲 byte [] abData=new byte[1024]; try{ while(nBytesRead != -1){ nBytesRead=audioInputStream.read(abData, 0,abData.length); if(nBytesRead>=0) auline.write(abData, 0, nBytesRead); } }catch(IOException e){ e.printStackTrace(); return; }finally{ auline.drain(); auline.close(); } } } javax.sound.sampled.UnsupportedAudioFileException: could not get audio input stream from input file at javax.sound.sampled.AudioSystem.getAudioInputStream(Unknown Source) at com.test2.AePlayWave.run(TestAudio.java:32) |
» 猜你喜欢
304求调剂
已经有8人回复
308求调剂
已经有8人回复
362求调剂
已经有6人回复
26自然地理学303分求调剂
已经有9人回复
312求调剂
已经有15人回复
化工求调剂!
已经有15人回复
284求调剂
已经有8人回复
一志愿哈工大,初试329,求环境科学与工程调剂!
已经有5人回复
327求调剂
已经有3人回复
一志愿吉大化学327求调剂
已经有5人回复















;
回复此楼