提供個HDFS的目錄的路徑,對該目錄進行創建和刪除操作。創建目錄時,如果目錄 文件所在目錄不存在則自動創建相應目錄;刪除目錄時,由用戶指定當該目錄不為空時是否還刪 除該目錄


import java.io.IOException;
import java.util.Scanner;
import org.apache.hadoop.fs.*;



public class G_CreateAndDelAlterVersion {
    public static void CreateFile(FSDataOutputStream out,FileSystem fs,Path p_remotepath)
    {
        try{
            out = fs.create(p_remotepath);
            System.out.println("create successfully");
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
    }
    public static void DelFile(FileSystem fs,Path p_remotepath)
    {
        try{
            if(fs.delete(p_remotepath, true))
            {
                System.out.println("del successfully");
            }
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
    }
    public static void main(String arg[])
    {
        try{
            Var_init var = new Var_init();
            
            if(!var.fs.exists(var.p_remoteFilePath))
                CreateFile(var.out,var.fs,var.p_remoteFilePath);
            else
            {
                RemoteIterator<LocatedFileStatus> remoteIterator = var.fs.listFiles(var.p_remoteFilePath, true);
                if(remoteIterator.hasNext())
                {
                    System.out.println("File is not empty , are u sure u want to delete it? y/n");
                    Scanner sc = new Scanner(System.in);
                    String str = sc.next();
                    if(str.equals("y"))
                    {
                        DelFile(var.fs,var.p_remoteFilePath);
                    }
                    else if(str.equals("n"))
                    {
                        System.out.println("Cancle");
                    }
                    else
                    {
                        System.out.println("plz input right common");
                    }
                }
                
            }
        }
        catch(Exception e){
            e.printStackTrace();
        }
    }

}
View Code

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


免責聲明!

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



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