(1)HTML5 文件操作API
2015-12-20 15:04
537 查看
FileEntry,本部分还提供了执行常规任务的众多技巧。创建文件您可以使用文件系统的[code]getFile()(
请求文件系统后,系统会向成功回调传递
FileSystem对象,
其中包含指向该应用相应文件系统的根的
DirectoryEntry(
fs.root)。
以下代码会在该应用相应文件系统的根中创建名为“log.txt”的空白文件:
[/code]
functiononInitFs(fs){
fs.root.getFile('log.txt',{create:true,exclusive:true},function(fileEntry){
//fileEntry.isFile===true
//fileEntry.name=='log.txt'
//fileEntry.fullPath=='/log.txt'
},errorHandler);
}
window.requestFileSystem(window.TEMPORARY,1024*1024,onInitFs,errorHandler);
FileSystem对象。我们可以将回调中的[code]fs.root.getFile()命名为要创建的文件的文件名。您可以传递绝对路径或相对路径,但该路径必须有效。
例如,如果您尝试创建一个其直接父级文件不存在的文件,[/code]
getFile()
的第二个参数是在文件不存在时从字面上说明函数行为的对象。
在此示例中,[code]create:true会在文件不存在时创建文件,
并在文件存在时(
exclusive:true)引发错误。
如果
create:false,系统只会获取并返回文件。
无论是哪种情况,系统都不会覆盖文件内容,
因为我们只是获取相关文件的引用路径。
通过名称读取文件以下代码会检索名为“log.txt”的文件,
并使用
FileReaderAPI读取文件内容,
然后将其附加到页面上新的<textarea>。如果log.txt不存在,系统将引发错误。[/code]
functiononInitFs(fs){
fs.root.getFile('log.txt',{},function(fileEntry){
//GetaFileobjectrepresentingthefile,
//thenuseFileReadertoreaditscontents.
fileEntry.file(function(file){
varreader=newFileReader();
reader.onloadend=function(e){
vartxtArea=document.createElement('textarea');
txtArea.value=this.result;
document.body.appendChild(txtArea);
};
reader.readAsText(file);
},errorHandler);
},errorHandler);
}
window.requestFileSystem(window.TEMPORARY,1024*1024,onInitFs,errorHandler);
functiononInitFs(fs){
fs.root.getFile('log.txt',{create:true},function(fileEntry){
//CreateaFileWriterobjectforourFileEntry(log.txt).
fileEntry.createWriter(function(fileWriter){
fileWriter.onwriteend=function(e){
console.log('Writecompleted.');
};
fileWriter.onerror=function(e){
console.log('Writefailed:'+e.toString());
};
//CreateanewBlobandwriteittolog.txt.
varbb=newBlobBuilder();//Note:window.WebKitBlobBuilderinChrome12.
bb.append('LoremIpsum');
fileWriter.write(bb.getBlob('text/plain'));
},errorHandler);
},errorHandler);
}
window.requestFileSystem(window.TEMPORARY,1024*1024,onInitFs,errorHandler);
相关文章推荐
- HTML5 文件操作API
- (3)HTML5的表单新特性
- (2)HTML5的表单新特性
- (1)HTML5的表单新特性
- HTML5 地理定位:
- html5中地理位置定位api接口开发应用:
- Html5新标签解释及用法
- 使用 HTML5 Web 存储实现离线工作:
- HTML5离线存储原理及实现:
- HTML5离线存储有优势吗?
- HTML5可以存的东西有哪些:
- html5 本地存储有多少种方案:
- 使用HTML5的理由
- HTML5本地储存解决了什么:
- HTML5应用之文件上传
- html5 canvas 笔记四(变形 Transformations)
- Adobe Animate CC即将发布
- 关于H5播放视频文件的问题
- html5 canvas 笔记三(绘制文本和图片)
- html5 canvas 笔记二(添加样式和颜色)