2016-08-05 26 views
0

chrome.fileSystemを使用して、ユーザーが選択したディレクトリ内にファイルを作成できますか?選択したエントリがディレクトリ全体にアクセスできるようなもので、作成、読み取り、削除操作を実行できますか?私は選択されたディレクトリ内のファイルパスをリストしています。Chromeファイルシステムを使用してユーザーが選択したディレクトリ内にファイルを作成

chrome.fileSystem.chooseEntry({type: 'openDirectory'}, function(theEntry) { 
        if (!theEntry) { 
         output.textContent = 'No Directory selected.'; 
         return; 
        } 
        // use local storage to retain access to this file 
        chrome.storage.local.set({'chosenResultDir': chrome.fileSystem.retainEntry(theEntry)}); 
        ??? // writeNewFileTochosenResultDir(theEntry); // ????? 
        }); 

答えて

2

chrome.fileSystem.chooseEntryドキュメントは言います

chrome.fileSystem.chooseEntry({type: 'openDirectory'}, function(entry) { 
    entry.getFile('newfilename.txt', {create: true}, function(file) { 
     file.createWriter(function(writer) { 
      writer.write(new Blob(['hello'])); // async 
      writer.onwrite = function(e) { 
       writer.onwrite = null; 
       writer.truncate(writer.position); // in case we overwrite an exitsing file 
       console.log('Done', e); 
      }; 
     }, function(err) { 
      console.error(err); 
     }); 
    }, function(err) { 
     console.error(err); 
    }); 
}); 

manifest.jsonをミニ:あなたは、ファイルを作成するためにFile APIを使用できるようにコールバックは、type: 'openDirectory'の場合には、明らかにDirectoryEntryある、Entryを受け取りますmumの許可:

"permissions": [ 
    {"fileSystem": ["write", "directory"]} 
], 

詳細な例は、公式Chrome sample app repositoryで入手できます。

0

はい、あなたは完全にマニフェスト権限でweb filesystem apiを使用して、選択したフォルダの内容にアクセスすることができます:{「ファイルシステム」:[「書き込み」、「ディレクトリ」]}

関連する問題