1.获取文件详细信息
@Test
public void fileDetail() throws IOException {
//参数解读:参数1:路径;参数2:是否递归
RemoteIterator listFiles = fs.listFiles(new Path("/"), true);
//遍历文件
while(listFiles.hasNext()){
LocatedFileStatus fileStatus = listFiles.next();
System.out.println("==========" + fileStatus.getPath() + "==========");
System.out.println(fileStatus.getPermission());
System.out.println(fileStatus.getOwner());
System.out.println(fileStatus.getGroup());
System.out.println(fileStatus.getLen());
System.out.println(fileStatus.getModificationTime());
System.out.println(fileStatus.getReplication());
System.out.println(fileStatus.getBlockSize());
System.out.println(fileStatus.getPath().getName());
//获取块信息
BlockLocation[] blockLocations = fileStatus.getBlockLocations();
System.out.println(Arrays.toString(blockLocations));
}
}
2.判断是文件还是文件夹
@Test
public void testFile() throws IOException {
FileStatus[] listStatus = fs.listStatus(new Path("/"));
for(FileStatus status : listStatus){
if(status.isFile()){
System.out.println("文件:" + status.getPath().getName());
}else{
System.out.println("目录:" + status.getPath().getName());
}
}
}



