java播放.wav为什么没有反应啊?求大神给解惑。。。

yls_2523168510 2013-03-27 07:23:00
package thread.audio;

import java.io.*;
import javax.sound.sampled.*;
public class Play {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
AudioPlay appAudioPlay=new AudioPlay(
"D:\\Download\\Misc\\Sound\\Classic\\Audio.wav");
appAudioPlay.start();
}

}
class AudioPlay extends Thread
{
String filename;
public AudioPlay(String URL_file)
{
this.filename=URL_file;
}
public void run()
{
File file=new File(filename);
AudioInputStream audioInputStream=null;
try {
audioInputStream=AudioSystem.getAudioInputStream(file);
} catch (UnsupportedAudioFileException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return;
}
AudioFormat aFormat=audioInputStream.getFormat();
SourceDataLine aDataLine=null;

try
{
DataLine.Info info=new DataLine.Info(SourceDataLine.class, aFormat);
aDataLine=(SourceDataLine)AudioSystem.getLine(info);
aDataLine.open(aFormat);
} catch (LineUnavailableException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return;
}
aDataLine.start();
int read_Audio=0;
byte[] bytes=new byte[512];
try {
while(read_Audio!=-1)
{
read_Audio=audioInputStream.read(bytes, 0,read_Audio);
if(read_Audio>=0)
aDataLine.write(bytes, 0, read_Audio);
}
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
return;
}finally{
aDataLine.drain();
aDataLine.close();
}
}
}
...全文
145 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
星空独行 2013-03-27
  • 打赏
  • 举报
回复
学习啦
-AJ- 2013-03-27
  • 打赏
  • 举报
回复
是文件路径有问题吧. 没有错误信息么?
yls_2523168510 2013-03-27
  • 打赏
  • 举报
回复
AudioStream 应该引入那个包?
tianma630 2013-03-27
  • 打赏
  • 举报
回复
FileInputStream fileau=new FileInputStream("D:/01.mid" ); AudioStream as=new AudioStream(fileau); AudioPlayer.player.start(as); 改成这样试试

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧