[英]How to convert JavaRDD<List<String>> to JavaRDD<String> and write to a file without "[" and "]"
I have a JavaRDD<List<String>>
and my file is getting written with [] at the beginning and end of each list of strings when I use我有一个
JavaRDD<List<String>>
,当我使用时,我的文件在每个字符串列表的开头和结尾都写有 []
javacontext.parallelize(rdd).coalesce(1, true).saveAsTextFile("dirname");
Can we convert JavaRDD<List<String>>
to JavaRDD<String>
and write it to a file?我们可以将
JavaRDD<List<String>>
转换为JavaRDD<String>
并将其写入文件吗?
You could use map
to apply String.join
for each List<String>
in JavaRDD
:您可以使用
map
为String.join
中的每个List<String>
应用JavaRDD
:
String separator = ",";
JavaRDD<String> ys = rdd
.map(new Function<List<String>, String>() {
@Override
public String call(List<String> xs) throws Exception {
return String.join(separator, xs);
}
});
Or using lambdas:或者使用 lambda:
JavaRDD<String> ys = rdd
.map((Function<List<String>, String>) xs -> String.join(separator, xs));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.