将hadoop的配置转换为Map <string,string =“”>

时间:2016-01-06 06:34:47

标签: java hadoop hdfs

如何将hadoop的Configuration conf转换为Map<String, String>

我有一个方法,将Map作为参数,我想将Configuration conf传递给它,那么如何在两者之间进行转换?

2 个答案:

答案 0 :(得分:2)

您可以使用Configuration提供的迭代器并构建Map。

Configuration configuration = new Configuration();
Map<String, String> map = new HashMap<>();
Iterator<Map.Entry<String,String>> iterator = configuration.iterator();
while (iterator.hasNext()) {
  Map.Entry<String, String> entry = iterator.next();
  map.put(entry.getKey(), entry.getValue());
}

您还可以查看this方法,该方法采用正则表达式并返回Map&lt;&gt;配置。

答案 1 :(得分:1)

为什么不这样做:

Map<String, String> config = new HashMap<String, String>();
for(String key: conf.getKeys()){
    config.put(key, conf.getString(key));
} 

即迭代所有条目并添加到Map