gpt4 book ai didi

存在文件的 Java.io.FileNotFoundException

转载 作者:行者123 更新时间:2023-12-02 13:38:29 33 4
gpt4 key购买 nike

我目前正在创建一个错误...烦人的程序,它会反复播放 clang ,但每当我运行它时就会出现错误。我已经尝试了一切,并且文件位于正确的位置。这是我当前的代码:

public class PlaySound {

public static void main(String[] args) throws Exception {
while (true) {
String path = PlaySound.class.getProtectionDomain().getCodeSource().getLocation().getPath().replaceAll("%20", " ");;
InputStream in = new FileInputStream(path + "//src//ding.wav");

AudioStream audioStream = new AudioStream(in);

AudioPlayer.player.start(audioStream);
TimeUnit.SECONDS.sleep(1);
}
}
}

是的,我使用了其他格式的代码,例如 //src//ding.wav任何帮助,将不胜感激。

编辑:错误也是

Exception in thread "main" java.io.FileNotFoundException: C:\Users\*** ******\Desktop\ding.jar\src\ding.wav (The system cannot find the path specified)
at java.io.FileInputStream.open0(Native Method)
at java.io.FileInputStream.open(Unknown Source)
at java.io.FileInputStream.<init>(Unknown Source)
at java.io.FileInputStream.<init>(Unknown Source)
at net.lookatthis.PlaySound.main(PlaySound.java:19)

EDIT2:在我重命名文件之前,该错误较旧。我更改了错误以反射(reflect)当前文件名

最佳答案

我认为您正在尝试读取指定硬盘驱动器绝对路径的 jar 文件中的资源。

ding.jar\src\hit.wav

所以有两种选择,或者将 ding.jar 文件解压到一个目录中。或者使用类加载器资源读取器指定相对路径和对文件的访问。

使用资源阅读器,您可以使用

找到 hit.wav 文件
InputStream in = PlaySound.class.getResource("/ding.wav").openStream();
AudioStream audioStream = new AudioStream(in);

关于存在文件的 Java.io.FileNotFoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42868570/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com