我是Scala编程的新手,我想在Scala中读取一个属性文件。
我找不到任何API来读取Scala中的属性文件。
如果有任何API用于读取Scala中的属性文件,请告知我们。
答案 0 :(得分:21)
除了表单Java API之外,Typesafe还有一个名为config的库,它有一个很好的API来处理不同类型的配置文件。
答案 1 :(得分:17)
您必须以与Scala Map
到java.util.Map
类似的方式执行此操作。 java.util.Properties
延伸java.util.HashTable
延伸java.util.Dictionary
。
scala.collection.JavaConverters
具有从Dictionary
转换为Scala mutable.Map
的功能:
val x = new Properties
//load from .properties file here.
import scala.collection.JavaConverters._
scala> x.asScala
res4: scala.collection.mutable.Map[String,String] = Map()
然后您可以使用上面的Map
。获取和检索。但是如果你想将它转换回Properties
类型(以存储回来等),你可能必须手动输入它。然后。
答案 2 :(得分:5)
您可以使用Java API。
答案 3 :(得分:0)
考虑一下
def getPropertyX: Option[String] = Source.fromFile(fileName)
.getLines()
.find(_.startsWith("propertyX="))
.map(_.replace("propertyX=", ""))
答案 4 :(得分:-2)
按照劳尔的方法,您必须解析该行并在=后获取值,这对我有用:
Source.fromFile(fileName)
.getLines()
.find(_.startsWith("version="))
.get
.split("=")(1)
同样的事情,选择行并将其拆分为=,你会得到一个数组[String],然后选择=之后的值,我的意思是数组中的第二个元素