如何返回可执行文件';java文件路径?
我想读取与源代码文件位于同一文件夹中名为如何返回可执行文件';java文件路径?,java,netbeans,path,Java,Netbeans,Path,我想读取与源代码文件位于同一文件夹中名为images的文件夹中的许多图像。我用来读取每个图像的路径是。\images\imageX.jpg。但它不承认这一点。我正在使用Netbeans。这将获得web应用程序中src/目录的路径: String path = YourClass.class.getProtectionDomain().getCodeSource().getLocation().getPath(); 然后,您可以添加导航到图像目录所需的任何内容。因此,假设images目录位于sr
images
的文件夹中的许多图像。我用来读取每个图像的路径是。\images\imageX.jpg
。但它不承认这一点。我正在使用Netbeans。这将获得web应用程序中src/
目录的路径:
String path = YourClass.class.getProtectionDomain().getCodeSource().getLocation().getPath();
然后,您可以添加导航到图像
目录所需的任何内容。因此,假设images
目录位于src
目录中的一个文件夹中,下面的操作应该可以完成:
File imageFile = new File(path + "images/imageX.jpg");
请记住,
getPath()
将返回,并在末尾带有一个尾随的正斜杠,因此,在进一步解析文件路径时,不需要包含任何图像。图像是在src
上下文中还是与src
上下文处于同一级别?谢谢@k_g:)在src文件中,我有file.java和images文件夹,其中包含所有图像。错误是:javax.imageio.IIOException:无法读取输入文件!在我的代码中,我这样做:File currentJavaFile1=newfile(“.”);字符串currentCanonicalPath=currentJavaFile1.getCanonicalPath();currentCanonicalPath=currentCanonicalPath+“\\src\\”+packageName+“\\images\\”代码>这是评论还是问题?在任何情况下,在发表评论时都不能使用标记。你必须用`来代替,例如,这里有一些代码。
哦,好的,对不起,我是新来的,我不知道。谢谢:)这是一个代码。我使用它创建路径并读取图像。但是我想使用一些更“动态”的东西,直接使用.java;的文件路径…是否有任何选项?我可以对此进行完整的解释吗?->”字符串路径=YourClass.class.getProtectionDomain().getCodeSource().getLocation().getPath();'我在回答中定义的path
变量应该提供Java代码所在的顶级src
目录的路径。