我已经使用Java RDD读取了一个csv文件,将其拆分并从其中删除标头,但是在读取记录时,它给出了:
java.lang.ArrayIndexOutOfBoundsException:5
因为文件末尾有两个空行。
我想知道如何处理这些空值,但是我只能使用Java RDD来执行所有操作。
答案 0 :(得分:0)
遍历记录时必须处理空字符串行,因此您的代码将如下所示:
SparkConf conf = new SparkConf().setAppName("CSV Reader").setMaster("local[*]");
JavaSparkContext sc = new JavaSparkContext(conf);
JavaRDD<String> inputfile = sc.textFile("path/input.csv");
inputfile.foreach(string -> {
if (string != null && !string.trim().isEmpty()) {
// Reading the record ...
System.out.println(string);
}
});