Java MapオブジェクトをPropertiesオブジェクトに変換するために、以下より良い方法を提供できる人はいますか?
Map<String, String> map = new LinkedHashMap<String, String>();
map.put("key", "value");
Properties properties = new Properties();
for (Map.Entry<String, String> entry : map.entrySet()) {
properties.put(entry.getKey(), entry.getValue());
}
ありがとう
Properties::putAll(Map<String,String>)
メソッドを使用します。
Map<String, String> map = new LinkedHashMap<String, String>();
map.put("key", "value");
Properties properties = new Properties();
properties.putAll(map);
apache _commons-collection4
_を使用することもできます
org.Apache.commons.collections4.MapUtils#toProperties(Map<K, V>)
例:
_Map<String, String> map = new LinkedHashMap<String, String>();
map.put("name", "feilong");
map.put("age", "18");
map.put("country", "china");
Properties properties = org.Apache.commons.collections4.MapUtils.toProperties(map);
_
javadocを参照
これはCommons Configurationで行うことができます:
Properties props = ConfigurationConverter.getProperties(new MapConfiguration(map));
MapAsProperties
を試してみてください Cactoos から:
import org.cactoos.list.MapAsProperties;
import org.cactoos.list.MapEntry;
Properties pros = new MapAsProperties(
new MapEntry<>("foo", "hello, world!")
new MapEntry<>("bar", "bye, bye!")
);