无法通过java播放音频文件

时间:2014-05-20 03:34:53

标签: java

在我的节目中,我正在尝试播放女性尖叫的音频文件。我正在使用一个简单的代码,通过sun.audio,但我无法让文件播放。 这是代码:

package hauntedHouseAdventure;

import java.io.*;
import sun.audio.*;

public class AudioScreamer {

    public static void main(String[] args)
            throws Exception {`

        // open the sound file as a Java input stream
        String screamFile = " C:/Users//alan/Downloads/woman-scream-01.au";
        InputStream in = new FileInputStream(screamFile);

        // create an audiostream from the inputstream
        AudioStream audioStream = new AudioStream(in);

        // play the audio clip with the audioplayer class
        AudioPlayer.player.start(audioStream);
    }
}

我得到的错误是

Exception in thread "main" java.io.FileNotFoundException:  C:\Users\alan\Downloads\woman-scream-01.au (The filename, directory name, or volume label syntax is incorrect)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(Unknown Source)
    at java.io.FileInputStream.<init>(Unknown Source)
    at hauntedHouseAdventure.AudioScreamer.main(AudioScreamer.java:19)

2 个答案:

答案 0 :(得分:3)

我们可以关闭这个问题......

尝试使用File并检查文件是否确实存在......

String screamFile = " C:/Users/alan/Downloads/woman-scream-01.au";
File fileOfScream = new File(screamFile);
System.out.println("Exists: " + fileOfScream.exists());

您希望它打印true

此外,您的路径还有一个领先的空间......

" C:/Users/alan/Downloads/woman-scream-01.au";
 ^------

这可能导致它找不到该文件。

答案 1 :(得分:0)

您的Java应用程序返回一个未找到文件的异常,因为您在&#34;之间放置了一个空格。和C:/&#34;。 删除空格,它按预期工作。