在mapper()类的map方法,setup()方法中读取当前split所在文件的文件名:
//获取当前split的文件名
FileSplit fileSplit = (FileSplit)context.getInputSplit();
System.out.println(fileSplit.getPath().getName());
System.out.println(fileSplit.getPath().toString());
System.out.println(fileSplit.getPath().getParent().toString());
System.out.println(fileSplit.getPath().getParent().getName());
System.out.println("----------------------------------");
测试结果:
dataSource
hdfs://127.0.0.1:9000/home/test_Big_Input/dataSource
hdfs://127.0.0.1:9000/home/test_Big_Input
test_Big_Input
-----------------------------------