【问题标题】:How to play an mp3 file located in a package?如何播放位于包中的 mp3 文件?
【发布时间】:2013-06-02 01:19:47
【问题描述】:

如何设置以下代码的目录以播放所选包内的 mp3 文件?

FileInputStream fis = new FileInputStream("song.mp3");

还有一个简单的问题:如何为以下代码添加暂停按钮?

try {
    FileInputStream fis = new FileInputStream("song.mp3");
    Player playMP3 = new Player(fis);
    playMP3.play();
} catch (Exception exc) {
    exc.printStackTrace();
    System.out.println("Failed to play the file.");
}

【问题讨论】:

  • 要暂停,您可能需要在不同的线程中播放您的播放器,以便play() 方法不会阻塞。那么希望 PLayer 将有一个 pause() 方法,您可以在需要时调用它。

标签: java file-io


【解决方案1】:

您可以使用ClassLoader#getResource()ClassLoader#getResourceAsStream() 方法获取类路径中的资源(即使密封在JAR 中)。

例如:

InputStream is = ThisClass.class.getClassLoader().getResourceAsStream("packagename/song.mp3");
// don't forget to close the stream

【讨论】:

    猜你喜欢
    • 2012-04-11
    • 1970-01-01
    • 1970-01-01
    • 2013-05-28
    • 2010-09-30
    • 2021-08-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多