2017-05-08 190 views
0

JavaScript和CSS的新手,我想知道是否可以從.txt文件提取數據並將其轉換爲文本並在頁面上打印。
我通過一些老話題搜索,並沒有發現一些similiar問題,我試圖複製,但沒有奏效hahha
這是我做的嘗試:將txt文件數據轉換爲html文本

HTML:

<div id="printed"></div> 

腳本:

var text_print = new XMLHttpRequest(); 
     text_print.open("GET", "folder/file.txt", true); 
     text_print.send(); 
     text_print.onload = function(){ 
      console.log(text_print.responseText.slice(0, text_print.responseText.indexOf("\n"))); }; 

    document.getElementById("printed").innerHTML=text_print; 

.txt文件只有一行文字,順便說一句。
謝謝。

+1

交換'send'行和'onload'之一,以確保事件監聽器在響應返回時已準備好(尤其是在本地工作時)。然後,在你的'onload'函數中插入最後一行('innerHTML')。因爲響應僅在那裏可用。另外,不要將它設置爲'text_print',而是'text_print.responseText.slice ...',因爲那是你想在那裏顯示的內容。此外,請確保您正在使用服務器(http或https協議,而不是'file:///'),並且這兩個文件(html和txt)位於同一個域中。否則,出於安全原因它將不起作用。 – blex

+0

沒有客戶端無法訪問系統中的文件。它可以從任何網址獲得文本 –

+0

有沒有辦法解決這個問題?我的項目不適合網頁,我不會上傳它,並且依賴於在本地作品上閱讀的.txt文件。這不能通過其他方式完成。謝謝! –

回答

0

正確的答案取決於你想要做什麼。

如果你只是想顯示的文字(就是這樣)

可以使用embed工具

<embed src="test.txt"> 

在哪裏「的test.txt」是你的文本文件的名稱。

請注意,您還需要文本文件的路徑。所以,如果是的test.txt在下面的文件目錄,你應該在你的情況下使用

<embed src="../test.txt"> 

<embed src="folder/file.txt" 

這是非常簡單的類型。這樣做的缺點是(就我所知),沒有辦法將樣式應用於顯示的文本。

+0

是的,我需要風格的文字哈哈哈謝謝 –