如何用javascript操作本地檔案(讀寫txt檔案)
javascript在瀏覽器本地和與伺服器通訊方面都有優異的表現。
使用javascript對本地檔案進行操作實際上是有一點技術後退的感覺。畢竟桌面應用程式微軟的、java的已經相當成熟了。不過用 javascript做點小程式來處理本地事務,在沒有java或者MFC開發環境的時候還是很方便的。
閒話少說,入正題:
1.先上程式碼:
//讀檔案
var fso, f1, ts;
var ForReading = 1;
fso =
new ActiveXObject("Scripting.FileSystemObject");
ts =
fso.OpenTextFile(document.all.attachFile.value/*此處為含全部路徑的檔名*/,
ForReading);
document.all.mailbdy.value=ts.ReadAll();
ts.Close();
//寫檔案
var title = document.getElementById("title").value;//檔名
var fso=new ActiveXObject("Scripting.FileSystemObject");
var f=fso.CreateTextFile("C://"+title+".nc",true); //可隨意選擇字尾名
f.write(document.getElementById("babala").value);
f.Close();
很簡單吧,這就是基本過程,從檔案中讀取到資料以後就可以進行相關操作了。
2.由於安全性原因ActiveXObject物件在firefox中無法使用。因此想要在firefox中完成類似的功能就需要採取別的方法 了。(怎麼做,現在我也不知道,嘻嘻)
3.選擇輸入檔案。可以使用<input type="file" name="attachFile"> 來獲取包含路徑的檔名。
4.我使用了<textarea>來進行檔案的顯示和修改。在儲存的時候。也可以使用window的saveAs命令。不過在儲存視窗 內容的時候,因為存在/n和<br />的轉換問題,因此在儲存檔案時可能會導致格式錯誤。不過用ActiveXObject儲存內容可以不用考慮該問題。
5.javascript的字串類提供的方法可以很方便的編寫字串處理程式。另外在處理字元到數字的轉換時,可以使用praseInt() 和parseFloat()方法。