【问题标题】:Java - getting image from file pathJava - 从文件路径获取图像
【发布时间】:2013-02-24 15:07:48
【问题描述】:

嘿,是否可以在不使用 java 中的完整文件位置的情况下从文件中获取图像?我下面的代码只适用于完整的文件路径:

Icon icon = new ImageIcon("/Users/MyMac/Documents/Project/Software/Project/src/UI/Images/default_pic.png");

是否可以这样使用文件路径?:

Icon icon = new ImageIcon("/src/UI/Images/default_pic.png");

【问题讨论】:

  • 尝试删除第一个/
  • 您必须适当地设置CLASSPATH
  • 感谢您的有用评论,而不是像其他人一样的负面评论

标签: java image filepath


【解决方案1】:

“/src/UI/Images/default_pic.png”是绝对路径,所以会在根目录中寻找src目录,然后在里面寻找UI子目录等。不是你想要什么。

您可以使用诸如“src/UI/Images/default_pic.png”之类的相对路径(注意它不以“/”开头),但正如其名称所说,它是相对于当前目录的。因此,如果您的当前目录是 /Users/MyMac/Documents/Project/Software/Project (或包含同一子路径中的文件的任何目录),它将起作用,否则不会。

最后,另一种方法是通过类路径访问文件。考虑到项目可以打包成 jar 文件,图像文件可能不是磁盘上的单独文件,但您仍然可以通过 URL 或 InputStream 来访问它。在 Class 和 ClassLoader 中搜索 getResource 和 getResourceAsStream。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-03-28
    • 2012-04-29
    • 1970-01-01
    • 1970-01-01
    • 2023-03-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多