繁体   English   中英

我如何在Java中播放Wave(WAV)文件

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM