Advertisement
photokandy

Filewriter example, looping through many content items. (ex)

Feb 29th, 2012
496
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. myFileSaver = function()
  2. {
  3.     self = this;
  4.     self.state = 0;
  5.     self.currentIndex = 0;
  6.     self.contents = Array();
  7.     self.filename = "mysave.txt";
  8.    
  9.     self.save = function() {
  10.         self.state = 1;
  11.         self.currentIndex = 0;
  12.         window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, self.gotFS, self.fail);
  13.     }
  14.  
  15.     self.gotFS = function(fileSystem) {
  16.         self.state = 1;
  17.         fileSystem.root.getFile(self.filename, {create: true}, self.gotFileEntry, self.fail);
  18.     }
  19.  
  20.     self.gotFileEntry = function(fileEntry) {
  21.         self.state = 2;
  22.         fileEntry.createWriter(self.gotFileWriter, self.fail);
  23.     }
  24.  
  25.     self.gotFileWriter = function(writer) {
  26.         self.state = -1;
  27.         var currentLineToWrite = self.contents[self.currentIndex];
  28.         self.currentIndex++;
  29.        
  30.         writer.onwriteend = function(evt)
  31.         {
  32.             if ( self.state < 0 )
  33.             {
  34.                 // writing out the rest of the file
  35.                 self.state = -2;
  36.                 var currentLineToWrite = self.contents[self.currentIndex];
  37.                 self.currentIndex++;
  38.                 if ( self.currentIndex > self.contents.length )
  39.                 {
  40.                     self.state = 0; // finished.
  41.                 }
  42.                 self.write ( currentLineToWrite );
  43.             }
  44.         };
  45.        
  46.         // write out FIRST line
  47.         writer.write( currentLineToWrite );
  48.     }
  49.  
  50.     self.fail = function(error) {
  51.         console.log(error.code);
  52.     }
  53. }
  54.  
  55. function onDeviceReady()
  56. {
  57.     var myFile = new myFileSaver();
  58.    
  59.     myFile.contents = YourFileContents.split("\n");
  60.     myFile.save();
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement