2017-02-21 108 views
-1

我有一個m3u文件,我想從中提取信息。我可以閱讀爲文本文件嗎? 任何想法如何讀取部署在服務器中的JavaScript或HTML行文本文件或m3u逐行讀取信息?從服務器讀取JavaScript中的文本文件

+0

你會需要一些服務器端代碼。它是什麼類型的服務器? –

+0

你想在客戶端或服務器上讀取它?如果客戶端,你可以使用jquery的get函數通過給它的URL和分割來下載它。如果是服務器,那麼我們需要問你作爲後端使用了什麼。 –

+0

你只是想閱讀使用JavaScript的文本文件? http://stackoverflow.com/questions/23331546/how-to-use-javascript-to-read-local-text-file-and-read-line-by-line – Emeria

回答

0

我使用Javascript創建了一個基本示例,從我在上面的註釋中鏈接的示例開始。只需使用FileReader在文本文件中讀取並在onload函數中創建一個循環,在該函數中解析出所需的記錄。我根據我的文件規範關閉維基百科,採用實例6

結果:https://jsfiddle.net/1sce9mv6/6/

的Javascript:

document.getElementById('file').onchange = function() { 

    var file = this.files[0]; 

    var reader = new FileReader(); 
    reader.onload = function(progressEvent) { 
    // Entire file for debugging 
    //console.log(this.result); 

    // By lines 
    var lines = this.result.split('\n'); 

    console.log('File read.'); 

    //Check if this is an m3u file 
    if (lines[0].includes("#EXTM3U")) { 
     console.log("File header found!"); 

     //Go through each line 
     for (var line = 1; line < lines.length; line++) { 

     //Process line 
     if (lines[line].includes("#EXTINF")) { 

      //print full line 
      console.log(lines[line]); 

      //split each line into the elements 
      var currentLine = lines[line].substring(7).split(','); 
      console.log("Runtime: " + currentLine[0]); 
      console.log("Song:" + currentLine[1]); 
     } else { 
      continue; 
     } 
     } 
    } else { 
     console.log(lines[0]); 
     console.log("Not m3u file..."); 
    } 
    }; 
    reader.readAsText(file); 
}; 

HTML:

<input type="file" name="file" id="file"> 

參考文獻:

+0

非常感謝,但我怎麼能更新此代碼當我的m3u文件在線例如:http://www.hello.com/*************.m3u –

+0

您是否問如何下載文件?你應該創建一個新的問題,如果這是你想要的。也嘗試給出的例子,你已經嘗試過。很難理解你在問什麼。 – Emeria

0

我會推薦使用jQuery。

如果你想逐行讀取文件中的行,然後使用:

<script> 
    $.get("item.txt", function(data) { 

    }); 
</script> 

其中,參數數據生成的文件信息。即使你只是試圖逐字節地獲取數據,這也可以正常工作。我不是很熟悉.m3u文件,但這個建議應該有所幫助。

相關問題