gpt4 book ai didi

尝试访问 .wav 文件时出现 java.io.FileNotFoundException(不是目录)

转载 作者:行者123 更新时间:2023-12-01 06:30:52 25 4
gpt4 key购买 nike

这与我之前的问题有关,因为它是相同的场景,只是更进一步。

我有一个名为 Sample 的测试类(class)这是 Wave 的简单包装器音乐库中的对象:

import com.musicg.wave.Wave;

public class Sample {

private String filename;
private Wave wave;
private WaveHeader waveheader;

public Sample(String filename) {
this.filename = filename;
wave = new Wave(this.filename);
waveheader = wave.getWaveHeader();
}
}

我正在尝试初始化 Sample对象通过将绝对路径传递给构造函数。这在 Eclipse 中有效。但是,一旦我导出了一个可运行的 Jar 文件,我就会在将路径传递到 Jar 文件中包含的 .wav 文件时得到一个 java.io.FileNotFoundException。这是我得到的:

java.io.FileNotFoundException: /Users/stas/Documents/java/workspace/EclipseTest/EclipseTest.jar/ORGCSDH1.wav (Not a directory)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:120)
at java.io.FileInputStream.<init>(FileInputStream.java:79)
at com.musicg.wave.Wave.<init>(Wave.java:60)
at stm.vst.test.Sample.<init>(Sample.java:14)
at stm.vst.test.Test.populateSamples(Test.java:70)
at stm.vst.test.Test.main(Test.java:14)

我被难住的是 (Not a directory)部分。这不是很有帮助,因为显然它也不应该是目录。这与找不到文件异常不同。该文件可验证在那里。

我应该说我是可运行 Jar 文件的新手,所以我确信我缺少一些非常简单的东西。

最佳答案

当资源被打包成 jar 文件时,它们不能作为文件在 HDD 上使用,而只能作为资源使用;关注 Java Images not drawn when running java -jar以及 How do I convert a "jar:file" URI to the path of Jar file?

关于尝试访问 .wav 文件时出现 java.io.FileNotFoundException(不是目录),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21885764/

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