已知:通过InputStream is=  this.getClass().getClassLoader().getResourceAsStream("01.au");获得01.au这个音频文件的InputStream
求:怎样从这个InputStream中获取并播放01.au这个文件。

解决方案 »

  1.   

    省资源,代码就不贴了。这是一个老贴。
    http://topic.csdn.net/u/20090226/21/62435202-5630-4e2a-baa5-9d79d52e31f8.html然后搜了下,这是外部参考资料。
    http://www.wangchao.net.cn/bbsdetail_1753879.html
      

  2.   

    http://java.sun.com/javase/technologies/desktop/media/jmf/2.1.1/download.html  下载JMF
      

  3.   

    里面有太多东西我不懂,我找了一上午也没找到有用的内容。我会怎样播放,主要是读取的问题。
    不用写完整代码,只需要把jar里和class在一起的au文件转化为可以播放的东西就行了,例如:AudioClip,或者我会转换的,例如:AudioStream,FileInputStream
    或者给我读取和class文件在一起的au文件代码片段。
      

  4.   

    import java.io.*; 
    import sun.audio.*; 
    public class Demo { 
    public Demo(String file_name){ 
    try{ 
    AudioPlayer.player.start(new FileInputStream(file_name)); 
    }catch(Exception e){ 


    public static void main(String args[]){ 
    Demo dd=new Demo("xxx.wav"); 


    这个可以试试
      

  5.   

    这个我会,但是我要的是将InputStream的转化。或者是把jar里和class在一起的au文件转化为可以播放的东西(我想把au文件一起打到可运行的jar包中,双击直接可运行(读取自身中的au文件),而不必读取旁边的文件).
    其中读取自身的图片和文本文件我都已经实现了,就是声音实现不了。http://www.myspaces.cn/Files/haoyyy/readJarSelf.rar
      

  6.   

    URL url = null;
    url = this.getClass().getResource("/clock.au");
    一定要记住.au的大小写,如果源文件是大写就大写,是小写就小写。例如如果大写就是clock.AU
      

  7.   

    这是我最终用的方法。虽然不能实现对InputStream的处理,但实现了从jar文件的读取。一楼的我没好好研究。