我不确定我是否理解 TextInputFormat 的工作方式。在文档中它说:
纯文本文件的 InputFormat。文件被分成几行。
所以我假设当我简单地将我作为 map 函数的输入的值转换为 String 时,我的文件中会有一行的 String 表示。
public void map(LongWritable key, Text value, Context context) throws IOException, InterruptedException {
String line = value.toString(); \\ one line of my input file?
...
}
但是,在进一步处理该行后,事实证明它实际上不是我文件中的一行。我的文件 city.dat 如下所示:
Andorra la Vella|ad|Andorra la Vella|20430|42.51|1.51
Canillo|ad|Canillo|3292|42.57|1.6
...
谁能告诉我如何在我的地图函数中处理这个文件的行?