2014-05-07 109 views
0

是否有方法使用客戶端代碼(無服務器端代碼/ Web服務)創建文本文件(並向其中寫入一些JSON數據)?使用客戶端代碼創建文本文件

+0

1我能想到的方法是將存儲您的JSON字符串的cookie。 – Raptor

+0

引用此:http://stackoverflow.com/questions/16055391/writing-data-to-a-local-text-file-with-javascript – jhyap

+0

可能重複的[我如何創建一個JavaScript文件在客戶端? ](http://stackoverflow.com/questions/3950131/how-can-i-create-a-file-on-client-side-by-javascript) –

回答

1

您可以使用local storage來存儲客戶端的數據,但是沒有辦法做到這個服務器端。

0

我最好的猜測是你需要使用javascript localstorage來存儲json。

例如:

var myObject = {}; 
localstorage['myKey'] = myObject; 
var secObject = localstorage['mykey']; 

//you couls also use : 
localstorage.setItem('myKey', myObject); 
secObject = localstorge.getItem('myKey'); 

我通常將其保存的情況下,之前「字符串」我的JSON我需要保存它(因爲當你複製一個對象,你實際上是一個參考複製到)後,修改「myObject的」

localstorage['myKey'] = JSON.stringify(myObject); 
secObject = JSON.parse(localstorage['myKey']); 
+0

localStorage就像一個臨時文件,在清除瀏覽器緩存時會被刪除。我想要的是我指定的目錄中的.txt文件(而不是某處瀏覽器存儲緩存) –

0

你怎麼都錯過了他的觀點?您可以在客戶端生成文本文件和.csv文件並將其作爲下載文件發送。

var element = document.createElement('a'); 
element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text)); 
    element.setAttribute('download', filename); 
    element.style.display = 'none'; 
    document.body.appendChild(element); 
    element.click(); 
    document.body.removeChild(element); 
} 

// Start file download. 
download("hello.txt","This is the content of my file :)"); 

從這個鏈接: https://ourcodeworld.com/articles/read/189/how-to-create-a-file-and-generate-a-download-with-javascript-in-the-browser-without-a-server

相關問題