簡體   English   中英

Eclipse 不播放聲音

[英]Sound not playing in Eclipse

這是 class SoundTest 的代碼:


package code;


import java.io.File;

import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.Clip;


public class SoundTest {

    public static void main(String args[])
    {
        File sound = new File("main//Sounds//open1.wav");
        playSound(sound);
    }

    public static void playSound(File f)
    {
        try {

            File file = f;
            if(file.exists())
            {
                AudioInputStream audio = AudioSystem.getAudioInputStream(file);
                Clip clip = AudioSystem.getClip();
                clip.open(audio);
                clip.start();
                //clip.close();
            }
            else
            {
                System.out.println("Can't find file");
            }


        }
        catch(Exception e)
        {
            System.out.println("Didn't work!");
        }
    }
}

當我運行它時,沒有錯誤或異常,而且它從不說“找不到文件”或“沒有工作”。 但是我聽不到聲音,我是否必須更改 Eclipse 中的某種設置才能讓聲音響起? 還是我做錯了什么。 我很確定聲音文件位於正確的位置。

那不是 eclipse 的問題。 java 正在打開和播放文件,但即使在該音頻剪輯完成播放之前,程序也會終止 - 這意味着 java 程序不會等待剪輯完成播放

您的方法缺少一行代碼來滿足您的需求,請參見下文

Thread.sleep(clip.getMicrosecondLength() / 1000);

所以,添加這一行后你的代碼應該是這樣的,你會聽到你的音樂

    AudioInputStream audio = AudioSystem.getAudioInputStream(file);
    Clip clip = AudioSystem.getClip();
    clip.open(audio);
    clip.start();
    Thread.sleep(clip.getMicrosecondLength() / 1000);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM