2012-02-27 59 views
4

我正在創建一個phonegap應用程序,並且需要在第一次加載時創建一個新的.txt文件。在此之後,我需要檢查文件是否存在,然後忽略了創作,如果是這樣的話,下面的是,我以後的一般流程:Phonegap - 在第一次加載時創建一個.txt文件

1 - onDeviceReady - 裝載phoengap應用 2 - 檢查的readme.txt存在(如果是負載主頁) 3 - 創建一個readme.txt文件,並添加到www文件夾 4 - 繼續加載網頁

編輯 - 而不是我下面所提到的有效的答案決定使用HTML5s本地存儲,因爲這只是一行代碼。

localStorage.setItem("name", "Email Supplied!"); 

,並可以使用這個簡單的if語句

if (localStorage.getItem("name") == "Email Supplied!") 
     { 
      // What you want to happen here 
     } 

回答

1

你可以看看完整的例子在這裏:如果它不存在

http://docs.phonegap.com/en/1.4.1/phonegap_file_file.md.html#FileWriter

該行創建文件:

fileSystem.root.getFile("readme.txt", {create: true, exclusive: false}, gotFileEntry, fail); 

支持的平臺

的Android黑莓WebWorks的(OS 5.0或更高版本)的iOS的Windows Phone 7( 芒果)

我不知道還有其他人,但在iOS上,在創建文件在/ var /移動/應用/ YOU_APP /文件

[CODE]

 <script type="text/javascript" charset="utf-8"> 

      // Wait for PhoneGap to load 
      // 
      document.addEventListener("deviceready", onDeviceReady, false); 

      // PhoneGap is ready 
      // 
      function onDeviceReady() { 
       window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail); 
      } 

      function gotFS(fileSystem) { 
       fileSystem.root.getFile("readme.txt", {create: true}, gotFileEntry, fail); 
      } 

      function gotFileEntry(fileEntry) { 
       fileEntry.createWriter(gotFileWriter, fail); 
      } 

      function gotFileWriter(writer) { 
       writer.onwrite = function(evt) { 
        console.log("write success"); 
       }; 

       writer.write("some sample text"); 
       writer.abort(); 
       // contents of file now 'some different text' 
      } 

      function fail(error) { 
       console.log("error : "+error.code); 
      } 

     </script> 

希望它可以幫助

+0

我試過了,沒有任何東西似乎被創建,也許我正在尋找他錯誤的文件位置。你知道創建時文件保存在哪裏嗎?你是否可以設置你想要保存的文件?謝謝 – 2012-02-28 09:00:52

+0

此功能還適用於所有Android,iOS和Blackberry(主要是iOS)? – 2012-02-28 09:01:52

0

取決於你正在爲你開發的設備上可以看看使用它們自己的文件創建API進行檢查。例如,iOS使用plists。 Android確實使用.txt文件,請查看link瞭解更多信息。

+0

你有,你可以指向我往的IOS實施的任何教程?謝謝 – 2012-02-28 09:02:36

+0

如果您使用本地文件創建API,您將需要與您正在開發的操作系統一樣多的插件,因爲PhoneGap需要加入這些API。 – 2012-02-28 10:00:03