gpt4 book ai didi

scala - 使用 Scala 读取类路径下的属性文件

转载 作者:行者123 更新时间:2023-12-04 10:04:44 25 4
gpt4 key购买 nike

我正在尝试使用 Scala 从类路径中读取属性文件。不过貌似不行,和java不一样。以下 2 个代码片段,一个是 java(工作),另一个是 scala(不工作)。我不明白有什么区别。

// working
BufferedReader reader = new BufferedReader(new InputStreamReader(
Test.class.getResourceAsStream("conf/fp.properties")));

// not working
val reader = new BufferedReader(new InputStreamReader(
getClass.getResourceAsStream("conf/fp.properties")));

Exception in thread "main" java.lang.NullPointerException
at java.io.Reader.<init>(Reader.java:78)
at java.io.InputStreamReader.<init>(InputStreamReader.java:72)
at com.ebay.searchscience.searchmetrics.fp.conf.FPConf$.main(FPConf.scala:31)
at com.ebay.searchscience.searchmetrics.fp.conf.FPConf.main(FPConf.scala)

最佳答案

这段代码终于对我有用:

import java.util.Properties
import scala.io.Source

// ... somewhere inside module.

var properties : Properties = null

val url = getClass.getResource("/my.properties")
if (url != null) {
val source = Source.fromURL(url)

properties = new Properties()
properties.load(source.bufferedReader())
}

现在您有了普通的旧 java.util.Properties 来处理我的遗留代码实际需要接收的内容。

关于scala - 使用 Scala 读取类路径下的属性文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15110315/

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