コード例 #1
0
        public static void Copy(Uri myUri, string destFolderName)
        {
            WebHDFSClient myClient = new WebHDFSClient(myUri, "hadoop");

            //drop destination directory (if exists)
           // myClient.DeleteDirectory(destFolderName, true).Wait();

            ////create destination directory
           // myClient.CreateDirectory(destFolderName).Wait();


            ////load file to destination directory
          //  string srcFileName = "D:\\IDE\\DATA SETS\\recipeitems-latest.json";
           // myClient.CreateFile(srcFileName, destFolderName + "/" + "recipeitems-latest.json").Wait();
            var a = myClient.GetDirectoryStatus(destFolderName);
            var d = a.GetAwaiter();
            d.OnCompleted(() =>
            {

                var c = d.GetResult().Files.ToList();
                foreach (var VARIABLE in c)
                {
                    Console.WriteLine(VARIABLE.PathSuffix);
                    

                }
                Console.Read();
            });
            var f=myClient.OpenFile(destFolderName + "/4300.txt").GetAwaiter();
            f.OnCompleted(() =>
            {
               Console.WriteLine(f.GetResult().ToString());
            });
            
            //var b = myClient.GetFileStatus(destFolderName + "/part-00000").GetAwaiter();
            //b.OnCompleted(() =>
            //{
            //   var s= b.GetResult();
            //});


            //Console.Read();

        }
コード例 #2
0
        public static void GetFile(string folderName, string fileName, string uri, string localfolder)
        {
            try
            {
                //connect to hadoop cluster
                Uri           myUri    = new Uri(uri);
                string        userName = "******";
                WebHDFSClient myClient = new WebHDFSClient(myUri, userName);

                string newpathfile = folderName + "/" + fileName;

                //list file contents of destination directory
                Console.WriteLine();
                Console.WriteLine("Get of file on " + newpathfile);

                var ss = myClient.OpenFile(newpathfile);

                //Console.WriteLine(ss.Result);

                string localFilePath = localfolder + "\\" + fileName;

                Stream output = File.OpenWrite(localFilePath);

                Task taskx = ss.Result.Content.ReadAsStreamAsync().ContinueWith(t =>
                {
                    var stream = t.Result;

                    stream.CopyTo(output);
                });

                Console.WriteLine("Download succeeded.");
                Console.ReadLine();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
                Console.ReadLine();
            }
        }