2017-08-28 60 views
0

我需要從Azure Data Lake讀取文件,並且必須在Angular-2組件中顯示這些文件。但在使用List File Status()方法時,我只從Azure Data Lake獲取文件屬性。但我需要帶有內容的文件。如何從Azure Data Lake中讀取所有包含內容的文件。我使用下面的代碼來列出所有的文件狀態。如何從Azure Data Lake中讀取文件並在Angular-2中顯示這些文件?

   listOfFiles = ListItems(pathOfFolder); 
       var stTime = new DateTime(); 

       foreach (var file1 in listOfFiles) { 

        var srcPath = pathOfFolder + "/" + file1.PathSuffix; 
        using (var stream = adlsFileSystemClient.FileSystem.Open(_adlsAccountName, srcPath)) { 
         using (var fileStream = new FileStream(destPath, FileMode.Create)) 
         { 
          stream.CopyTo(fileStream); 
          listOfStreams.Add(fileStream); 

         } 
        } 

       } 

但它會給出文件流的列表,它會花費很多時間。有沒有辦法讓所有的文件都有內容?

回答

0

沒有API可以一次性獲取所有文件及其內容。可以想象,一個文件夾可能有數百萬個文件,每個文件可能有數TB的數據。單個REST調用不能強有力地返回枚舉以及這樣一個大型數據集的內容。

你這樣做的方式是正確的方法。

+0

如果我這樣做,我正在獲取文件流。但我需要IFrame URL來顯示此文件。我怎樣才能從天青Data Lake獲得IFrame URL?是否有可能或以其他方式在IFrame中顯示此文件? – chinna

+0

它沒有內置的API。您需要下載文件的一部分並將其呈現在您的應用中。 –

相關問題