gpt4 book ai didi

java - 无法从 war 中获取文件

转载 作者:行者123 更新时间:2023-12-01 13:37:54 24 4
gpt4 key购买 nike

我需要从 war 中获取属性文件。

String fileName = loadFileName();
try {
FileInputStream fis = new FileInputStream(new File(Thread.currentThread().getContextClassLoader().getResource(fileName).toURI()));
property.load(fis);
}
.........

private String loadFileName(){
if(currentLocale.equals(new Locale("en"))){
return "file:///locale/output/language.properties";
} else {
return "file:///locale/output/language_ru.properties";
}
}

此文件位于 main/resources/locale/output 文件夹中。不幸的是,这种方法不起作用,所有属性值都是空的。如何正确加载war中的文件?服务器:JBoss AS 7

enter image description here

最佳答案

WAR 是一个存档文件。您不能将存档中的"file"视为文件。只需通过#getResourceAsStream(String name)打开资源即可。这里的name可能是/locale/output/language.properties

当然你不应该自己构建 i18n。

关于java - 无法从 war 中获取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21123993/

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