1. 程式人生 > >如何用javascript操作本地檔案(讀寫txt檔案)

如何用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()方法。