給定HDFS中某一個目錄,輸出該目錄下的所有文件的讀寫權限、大小、創建時間、路徑等信息,如果該文件是目錄,則遞歸輸出該目錄下所有文件相關信息。


 1 import java.text.SimpleDateFormat;
 2 import org.apache.hadoop.fs.*;
 3 
 4 public class E_RecursiveReadFile {
 5     public static void ReadFilesStatus(FileStatus fileinfo)
 6     {
 7         SimpleDateFormat format = new SimpleDateFormat(
 8                 "yyyy-MM-dd HH:mm:ss");
 9         System.out.println("file path :"+fileinfo.getPath());
10         System.out.println("file size :"+fileinfo.getLen()+"byte");
11         System.out.println("file permission :"+fileinfo.getPermission());
12         System.out.println("file create time :"+format.format(fileinfo.getModificationTime()));
13         System.out.println("------------------------------------------------");
14     }
15     public static void main(String arg[])
16     {
17         try{
18             Var_init var = new Var_init();
19             String s_path = "/user";
20             Path p_path = new Path(s_path);
21             RemoteIterator<LocatedFileStatus> remoteIterator = var.fs.listFiles(p_path, true);
22             System.out.println("------------------------------------------------");
23             while(remoteIterator.hasNext())
24             {
25                 var.fileinfo = remoteIterator.next();
26                 ReadFilesStatus(var.fileinfo);
27             }
28         }
29         catch(Exception e){
30             e.printStackTrace();
31         }
32     }
33 }
View Code

Var_init類參考 https://www.cnblogs.com/MiraculousB/p/13848744.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM