0

我遵循了将 wav 文件导入应用程序的教程。我不知道我是否将文件 URL 放在了正确的位置:

public class Audioapp extends JApplet
{
    public class Sound // Holds one audio file
    {
        private AudioClip song; // Sound player
        private URL songPath; // Sound path
        Sound(String filename)
        {
            try
            {
                songPath = new           URL(getCodeBase(G:\Uni\Programming\Rolling assignements\Week0\Programming week21),filename); // Get the Sound URL
                song = Applet.newAudioClip(songPath); // Load the Sound
            }
            catch(Exception e){} // Satisfy the catch
        }
        public void playSound()
        {
            song.loop(); // Play
        }
    }
}

我得到的错误是:

“此行有多个标记 - 标记上的语法错误,错误的构造 - 标记上的语法错误,删除这些标记”

我应该在哪里放置 URL,因为我希望它从特定的工作文件夹而不是我的 U 盘播放,我是否只需放置文件的名称而不是整个路径。我都试过了,但它们都不起作用。

有什么帮助吗?

谢谢

4

1 回答 1

1

很抱歉第一眼没有注意到..

  • 首先:URL 需要一个字符串作为构造函数参数,而不是您所做的(注意参数周围的双引号。此外,查看 getCodeBase() 函数也会有所帮助)
  • 第二:由于您似乎相当缺乏经验,因此记住\字符是明智的,反斜杠通常用于转义字符,因此在大多数情况下,在字符串常量中使用时,必须通过将其加倍来进行转义。

    songPath = new URL(getCodeBase("G:\\Uni\\Programming\\Rolling assignements\\Week0\\Programming week21"),filename);

更好的是使用File.separator静态字段......

另外,因为那里有一个空的“满足捕获”块,如果我是你的同事,我会用重物打你,同时对你大喊大叫。使用e.printStackTrace(), 或适当的日志记录框架。老师通常不会因此而打你,但会给你差评...

于 2013-03-18T14:13:04.620 回答