teIterator<LocatedFileStatus> iterator = fs.listFiles(new Path(path), true);
while (iterator.hasNext()){
//拿数据
LocatedFileStatus status = iterator.next();
System.out.println("文件的路径为:" + status.getPath());
System.out.println("文件的块大小为:" + status.getBlockSize());
System.out.println("文件的块信息为:" + Arrays.toString(status.getBlockLocations()));
System.out.println("文件的长度为:" + status.getLen());
System.out.println("文件的副本数为:" + status.getReplication());
System.out.println("=====================================================");
}
fs.close();
}
/**
* 判断时文件还是文件夹
* @param parh
* @throws IOException
*/
public void judgeFileOrDir(String parh) throws IOException {
//展示状态信息
FileStatus[] fileStatuses = fs.listStatus(new Path(parh));
//遍历所有文件
for (FileStatus fs:fileStatuses){
if (fs.isFile()){
System.out.println("文件-----f------" + fs.getPath().getName());
}else {
System.out.println("文件-----d------" + fs.getPath().getName());
}
}
}
}
public class HdfsDriver {
public static void main(String[] args) {
HdfsClientDemo hcd = new HdfsClientDemo();
try {
//hcd.mkDir("/wyh");
hcd.judgeFileOrDir("/");
hcd.list("/");
} catch (IOException e) {
e.printStackTrace();
}
}
}
四、
|