2012-04-06 204 views
1

我想使用javascript在應用程序路徑中保存.json文件。 我用下面的代碼來保存文件。但它保存在物理路徑中。不在應用程序路徑中。 我的代碼是:如何使用javascript在相對路徑中保存文件

var fso = new ActiveXObject("Scripting.FileSystemObject"); 
var s = fso.CreateTextFile("E:\\Model.json", true); 
s.WriteLine(json); 
s.Close(); 

在服務器端可以使用使用Server.Mappath,但我不知道如何在Javascript中保存。 請指導我的朋友, 在此先感謝..

+0

你打算在網頁中運行這個腳本嗎?我懷疑它是否會這樣工作。 – 2012-04-06 11:30:09

回答

0

我把它通過Windows腳本宿主或類似的運行。

只需使用相對路徑:

var s = fso.CreateTextFile("Model.json", true); 

注意,我離開了E:\\關閉。

我不知道你的意思是「應用程序路徑,」,但是這會將文件保存在運行腳本/應用程序的當前目錄中。如果您想要對其中一個「特殊」Windows文件夾執行此操作,請使用FileSystemObject#GetSpecialFolder獲取特殊文件夾的路徑,然後將路徑附加到該文件夾​​中。

+0

我可以通過調用Model.json讀取文件..但我不能保存文件。 – ganesh 2012-04-06 11:59:40

+0

@ganesh:那麼這與代碼無關。我只是抓住了代碼,刪除了'E:\\',創建了一個'json' var,並使用Windows Scripting Host運行它。工作很好。 – 2012-04-06 16:21:49

0

難道你不能只取消驅動器前綴amd使用相對路徑?

var fso = new ActiveXObject("Scripting.FileSystemObject"); 

var s = fso.CreateTextFile("MyFolder\\Model.json", true); 

s.WriteLine(json); 
s.Close(); 

而且也從看FSO documentation有幾種方法來獲取當前目錄的路徑,並計算自己的路徑爲好。

相關問題