[英]how do I play a wave (wav) file in java
我到处都是关于堆栈溢出和其他一些站点的信息,但是我找不到真正有用的东西。 我需要的代码,可以播放音频文件里面一样的我Class.java文件。 换句话说,我需要它来播放文件而无需键入文件的确切位置,就像我将其发送给朋友一样。 这是我所拥有的:
import java.applet.*;
import java.net.*;
public class MainClass extends Applet {
public void init() {
try {
AudioClip clip = Applet.newAudioClip(
new URL(“file://C:/sound.wav”));
clip.play();
} catch (MalformedURLException murle) {
murle.printStackTrace();
}
}
但是我不能让它从任何地方播放,只能从该特定文件夹播放。 有没有一种方法,而无需在文件位置之前输入“ URL”?
我相信Applet.audioClip()
是供Applets内部使用的,而不是桌面应用程序。 限制之一是只能使用URL来定位声音资源。 另一方面,Java Sound API更通用。 它使您可以使用File
对象以及许多其他选项来定位声音资源。
您还需要弄清楚如何引用您的文件。 特别是,如果要使用相对路径,则需要弄清楚环境将从哪个基本路径开始。 将资源(图像,声音位等)嵌入Java项目中,然后使用这些资源将为您提供有关如何解决此问题的更多详细信息。
更改您的URL声明,将"file://C:/sound.wav"
更改为"file:C:/sound.wav"
import java.applet.*;
import java.net.*;
public class MainClass {
public static void main(String[] args) {
try {
AudioClip clip = Applet.newAudioClip(
new URL("file:C:/sound.wav"));
clip.play();
} catch (MalformedURLException murle) {
murle.printStackTrace();
}}}
*我已经对其进行了测试,并且在NetBeans IDE下运行良好
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.