Files
fonteditor/demo/js/filesystem.js
2014-09-21 22:50:59 +08:00

88 lines
2.2 KiB
JavaScript

/**
* @file filesystem.js
* @author mengke01
* @date
* @description
* 文件系统入口
*/
define(
function(require) {
function errorHandler(e) {
var msg = '';
switch (e.code) {
case FileError.QUOTA_EXCEEDED_ERR:
msg = 'QUOTA_EXCEEDED_ERR';
break;
case FileError.NOT_FOUND_ERR:
msg = 'NOT_FOUND_ERR';
break;
case FileError.SECURITY_ERR:
msg = 'SECURITY_ERR';
break;
case FileError.INVALID_MODIFICATION_ERR:
msg = 'INVALID_MODIFICATION_ERR';
break;
case FileError.INVALID_STATE_ERR:
msg = 'INVALID_STATE_ERR';
break;
default:
msg = 'Unknown Error';
break;
};
console.log('Error: ' + msg);
}
function onInitFs(fs) {
fs.root.getFile('log.txt', {create: true}, function(fileEntry) {
// Create a FileWriter object for our FileEntry (log.txt).
fileEntry.createWriter(function(fileWriter) {
fileWriter.onwriteend = function(e) {
console.log('Write completed.');
console.log(fileEntry.name);
console.log(fileEntry.fullPath);
};
fileWriter.onerror = function(e) {
console.log('Write failed: ' + e.toString());
};
// Create a new Blob and write it to log.txt.
var bb = new Blob(['Lorem Ipsum'], {
type: 'text/plain'
}); // Note: window.WebKitBlobBuilder in Chrome 12.
fileWriter.write(bb);
}, errorHandler);
}, errorHandler);
}
var entry = {
/**
* 初始化
*/
init: function () {
window.requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem;
window.requestFileSystem(window.TEMPORARY, 1024*1024, onInitFs, errorHandler);
}
};
entry.init();
return entry;
}
);