Ответ 1
Помимо формы Java API, существует библиотека по типам "Тип", называемая config, с хорошим API для работы с файлами конфигурации разных типов.
Я новичок в программировании Scala, и я хотел прочитать файл свойств в Scala.
Я не могу найти какие-либо API-интерфейсы для чтения файла свойств в Scala.
Пожалуйста, дайте мне знать, есть ли какой-либо API для этого или другого способа читать файлы свойств в Scala.
Помимо формы Java API, существует библиотека по типам "Тип", называемая config, с хорошим API для работы с файлами конфигурации разных типов.
Вам придется делать это так же, как с 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
(чтобы сохранить обратно и т.д.), Вам, возможно, придется вручную вводить его вручную.
Вы можете просто использовать Java API.
Рассмотрим что-то вдоль линий
def getPropertyX: Option[String] = Source.fromFile(fileName)
.getLines()
.find(_.startsWith("propertyX="))
.map(_.replace("propertyX=", ""))
Следуя подходу Raul, вам нужно проанализировать строку и получить значение после =, это работает для меня:
Source.fromFile(fileName)
.getLines()
.find(_.startsWith("version="))
.get
.split("=")(1)
То же самое, выберите строку и разделите ее на =, вы получите Array [String], затем выберите значение after =, я имею в виду второй элемент в массиве