如何在 Java Applet 中正确使用 getDocumentBase() 和 getCodeBase()?

0 java applet

我正在开发一个项目,并且我是小程序的新手。我不知道如何使用这些参数查找文件。我知道还有另一个问题几乎相同,但我希望以一种简单、简化的方式解决这个问题,因为我对此很陌生。任何帮助都是极好的!!!这是我的代码:

import java.applet.Applet;
import java.applet.AudioClip;
import java.awt.Graphics;

public class SoundDemo extends Applet
{
public void init()
{
AudioClip clip = getAudioClip( getCodeBase(), "sounds/Dragon Roost.wav" );
clip.play();
}

public void paint( Graphics g )
{
g.drawString( "Now Playing Clip", 10, 10 );
}
Run Code Online (Sandbox Code Playgroud)

}

Bra*_*raj 5

它可能会帮助你理解。music在这里,我正在读取存储在我的项目文件夹中的文件夹下的音乐文件src,如下面的快照所示。

getDocumentBase()指向bin存储所有类的文件夹(类路径)。

在你的情况下,它将从中获取音乐bin/sounds/Dragon Roost.wav


获取文档库()

获取嵌入此小程序的文档的 URL 。例如,假设文档中包含一个小程序:

http://java.sun.com/products/jdk/1.2/index.html
Run Code Online (Sandbox Code Playgroud)

文档基础是:

http://java.sun.com/products/jdk/1.2/index.html
Run Code Online (Sandbox Code Playgroud)

获取代码库()

获取基本 URL。这是包含该小程序的目录的 URL 。


示例代码:

小程序:

URL url = getDocumentBase();
AudioClip audioClip = getAudioClip(url, "music/JButton.wav");
Run Code Online (Sandbox Code Playgroud)

项目结构:

在此输入图像描述