Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
音频文件未在java中播放_Java_Audio_Media Player - Fatal编程技术网

音频文件未在java中播放

音频文件未在java中播放,java,audio,media-player,Java,Audio,Media Player,我正在尝试使用MediaPlayer播放音频文件,但它无法工作和显示 Exception in thread "main" java.lang.IllegalArgumentException: uri.getScheme() == null! uri == 'audio.mp3' 有人能帮我修一下吗 这是我的密码: package playaudio; import javafx.scene.media.Media; import javafx.scene.media.MediaPlaye

我正在尝试使用MediaPlayer播放音频文件,但它无法工作和显示

Exception in thread "main" java.lang.IllegalArgumentException: uri.getScheme() == null! uri == 'audio.mp3'
有人能帮我修一下吗

这是我的密码:

package playaudio;

import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;

public class PlayAudio {

    public static void main(String[] args) {

        String fileName = "audio.mp3";
        Media playFile = new Media(fileName);
        MediaPlayer mediaPlayer = new MediaPlayer(playFile);
        mediaPlayer.play();
    }

}
编辑:当我尝试将文件名转换为URI时,会显示以下异常

Exception in thread "Thread-0" java.lang.IllegalStateException: Toolkit not initialized
代码:


Media
的构造函数实际上需要一个URI,这意味着您必须将文件名转换为URI,请尝试以下操作:

Media Media=new Media(路径.get(文件名).toUri().toString())

您可以试试这个

InputStream in = new FileInputStream("audio.wav");
AudioStream as = new AudioStream(in);     
AudioPlayer.player.start(as);

但是,这只适用于.wav文件。

可能的重复并不能解决我的问题。我试过了,但有例外/我试过了,但仍然在线程“thread-0”java.lang.IllegalStateException:Toolkit未初始化中显示-Exception
InputStream in = new FileInputStream("audio.wav");
AudioStream as = new AudioStream(in);     
AudioPlayer.player.start(as);