gpt4 book ai didi

java - 如何在 Java 中检索外部 .properties 文件?

转载 作者:行者123 更新时间:2023-12-01 18:17:55 24 4
gpt4 key购买 nike

我在尝试从项目外部的目录加载属性文件时遇到以下问题。

所以我的项目具有以下结构:

PROJECT-ROOT
|
|
|-----> confi
|
|------> src
|
|
|------> mainPkg (the package name)
|
|
|------> Main (the main class containing the main() method)

好的,所以我需要加载位于项目根文件夹外部(例如在同一级别)的 config.properties 文件到主类中。所以我认为 config.properties 文件位于应用程序类路径的外部。

所以我尝试做这样的事情:

InputStream input = new FileInputStream("../../config.properties");

InputStream input = new FileInputStream("../../../config.properties");

但不起作用,因为我收到以下异常:

java.io.FileNotFoundException: ..\..\config.properties (Impossibile trovare il file specificato)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:120)
at java.io.FileInputStream.<init>(FileInputStream.java:79)
at mainPkg.Main.main(Main.java:41)

如果我使用这样的绝对路径,它会起作用:

InputStream input = new FileInputStream("C:\\Projects\\edi-sta\\config.properties");

并正确检索InputStrea对象。但这对我的目的不利,因为我无法使用绝对路径。

如何使用相对路径检索位于项目根文件夹同一级别的 config.properties 文件?

最佳答案

您的项目根目录将是您的程序的当前工作目录。所以,你应该尝试使用

InputStream input = new FileInputStream("../config.properties");

但这不是推荐的设置。该文件应放置在项目目录中,并且在您发布应用程序时应进行适当的 jar 处理。

关于java - 如何在 Java 中检索外部 .properties 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28503055/

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