百度了一下代码用AudioStream  则提示Access restriction: The type AudioStream is not accessible due to restriction on required library D:\Program Files\Java\jdk1.7.0_25\jre\lib\rt.jar
不会用JMF为了具有更好的移植性,可以使用url么,怎样操作么?
或者有其它办法吗?
import   java.applet.*; 
public class PlaySound{
    public static void main(String[] args){
    //String   music  = "mu.wav";  
      AudioClip   clip = Applet.newAudioClip(PlaySound.class.getClass().getResource("music/01.wav"));    
      clip.play(); 
    }
}
01.wav是放在src文件夹下的music目录    运行起来  结果java.lang.NullPointerException

解决方案 »

  1.   


    import java.applet.Applet;
    import java.applet.AudioClip;
    import java.io.File;
    import java.net.MalformedURLException;
    import java.net.URL;
    public class PlaySound { /**
     * @param args
     */
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    String file=new File("music/mmj.wav").getAbsolutePath();
    AudioClip clip = null;
    try {
    clip = Applet.newAudioClip(new URL("file://"+file));
    } catch (MalformedURLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }    
        clip.play(); 
    }}
      

  2.   


    试了那段代码几次都是无反应,但是这次没有thow  Exception   路径也试了,同样没有反应。   不过刚才酷狗突然打开,播了一下音乐,不知是自己不小心打开,还是那段代码相应迟钝~
      

  3.   


    试了那段代码几次都是无反应,但是这次没有thow  Exception   路径也试了,同样没有反应。   不过刚才酷狗突然打开,播了一下音乐,不知是自己不小心打开,还是那段代码相应迟钝~我没敢试验,就是测试通过了就扔上来了,上班不能开····,外放容易死人的,你在调试下吧,或者是你调用的方法不对
      

  4.   

    不会用JMF是什么意思。。搜一段代码有多难?
      

  5.   


    试了那段代码几次都是无反应,但是这次没有thow  Exception   路径也试了,同样没有反应。   不过刚才酷狗突然打开,播了一下音乐,不知是自己不小心打开,还是那段代码相应迟钝~我没敢试验,就是测试通过了就扔上来了,上班不能开····,外放容易死人的,你在调试下吧,或者是你调用的方法不对直接扔上eclipse  就一直抛exception    在百度上下载人家已经写好的代码,整个游戏的代码,把它那段playmusic的代码修改后和音乐扔到我的代码中,还是抛空指针。  但是它原代码直接不会出错,可以运行。      现在就是那个Playmusicd度、单独给个main运行后,都抛空指针,应该不会是调试方式不对吧~  不过,谢谢你先