`

java实现音乐播放器(转)

阅读更多
http://1035054540-qq-com.iteye.com/blog/1278809
java实现音乐播放器

博客分类: swing
java音乐播放器
学习过java语言的你,或多或少,在某天突发奇想,想着用swing做一个音乐播放器。但是,发现很难找到,相关的java代码,或者你下载的代码有问题,或者你代码里面引入的类包找不到。为了解决自如此类的问题。在这儿,有如下的代码可以供大家参考。

Java代码 
package TheMusic; 
import java.io.*; 
 
import javax.sound.sampled.*; 
 
public class Music { 
 
  
public static void main(String[] args) { 
  // TODO Auto-generated method stub 
                //修改你的音乐文件路径就OK了 
  AePlayWave apw=new AePlayWave("突然好想你.wav"); 
  apw.start(); 

 




在程序中实例化这个类,启动线程,实例化的时候参照Test修改路径就OK播放声音的类
Java代码 
public 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[512]; 
 
  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(); 
  } 
 

 
  



好了,到此结束。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics