所以我要给我的一个程序员 friend 做生日礼物。我的代码不好,但是我做了一个窗口+ gif +声音。但是,一旦我在另一台PC上对其进行测试,声音将不再起作用,但是JAR文件足够包含WAV。请帮我,我真的很想做一个漂亮的生日礼物。这是声音代码+主要
public static void play() {
try {
File file = new File("C:/Users/timma/IdeaProjects/BirthdayAshley/1" + ".wav");
Clip clip = AudioSystem.getClip();
clip.open(AudioSystem.getAudioInputStream(file));
clip.start();
Thread.sleep(clip.getMicrosecondLength());
} catch (Exception e) {
System.err.println(e.getMessage());
}
}
public static void main(String[] args){
JFrame jf = new JFrame ("Happy Birthday");
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setSize(617,345);
jf.add(new Birthday());
jf.setVisible(true);
jf.setResizable(false);
play();
}
最佳答案
如果WAV在JAR内,则无法通过文件进行引用。
但是您可以通过 Class.getResourceAsStream()
打开它。其他所有内容都应保持不变。
InputStream stream =
SomeClassInTheSameJar.class.getResourceAsStream("/BirthdayAshley/1.wav");
关于java - 将Java编译为JAR文件后播放WAV文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44414268/