版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
HTML5移动应用开发3HTML5+及MUI四川大学锦城学院李勇IO模块-基础篇IO模块管理本地文件系统,用于对文件系统的目录浏览、文件的读取、文件的写入等操作。通过plus.io可获取文件系统管理对象。常量:1、plus.io.PRIVATE_WWW应用运行资源目录常量,仅本应用可读。2、plus.io.PRIVATE_DOC
应用私有文档目录常量,仅本应用可读、写。3、plus.io.PUBLIC_DOCUMENTS
程序公用文档目录常量,所有应用可读、写。4、plus.io.PUBLIC_DOWNLOADS
程序公用下载目录常量,所有应用可读、写。IO模块-基础篇方法:1、requestFileSystem(type,succesCB,errorCB):请求本地文件系统对象获取指定的文件系统,可通过type指定获取文件系统的类型,获取成功通过succesCB回调返回,失败则通过errorCB返回。演示代码:plus.io.requestFileSystem(plus.io.PRIVATE_WWW,function(fs){mui.alert("Requestfilesystemsuccess!");},function(e){mui.alert("Requestfilesystemfailed:"+e.message);});IO模块-基础篇方法:2、resolveLocalFileSystemURL(url,succesCB,errorCB):通过URL参数获取目录对象或文件对象url值可支持相对路径URL、本地路径URL、网络路径URL。获取成功通过succesCB回调返回,如果失败则通过errorCB回调返回。演示代码plus.io.resolveLocalFileSystemURL('_www/test.txt',function(entry){mui.alert(entry.fullPath);},function(e){ mui.alert("ResolvefileURLfailed:"+e.message);});IO模块-基础篇方法:3、convertLocalFileSystemURL(url):将本地URL路径转换成平台绝对路径URL地址必须是合法的路径,如果地址不合法则返回null。返回值是转换后在平台上的路径,在不同平台或者不同设备返回的值可能存在差异。演示代码:varpath=plus.io.convertLocalFileSystemURL('_www/a.txt');mui.alert(path);IO模块-基础篇方法:4、convertAbsoluteFileSystem(path):将平台绝对路径转换成本地URL路径功能与convertLocalFileSystemURL方法相反,将绝对路径转换成相对路径。演示代码:varpath=plus.io.convertLocalFileSystemURL('_www/a.txt');varpathNew=plus.io.convertAbsoluteFileSystem(path);mui.alert(pathNew);DirectoryEntry(文件夹及文件操作)相对路径URL常量:1、“_www”:应用资源目录.保存应用的所有html、css、js等资源文件,与文件系统中根目录PRIVATE_WWW一致,后面加相对路径如“_www/res/icon.png”。2、“_doc”:应用私有文档目录.用于保存应用运行期业务逻辑数据,与文件系统中根目录PRIVATE_DOCUMENTS,如“_doc/userdata.xml”。3、“_documents”:程序公用文档目录.用于保存程序中各应用间可共享文件的目录,与文件系统中根目录PUBLIC_DOCUMENTS,如“_document/share.doc”。4、“_downloads”:程序公用下载目录.用于保存程序下载文件的目录,与文件系统中根目录PUBLIC_DOWNLOADS,如“_download/mydoc.doc”。DirectoryEntry(文件夹及文件操作)属性1、isFile:操作对象是否为文件,DirectoryEntry对象其值为falseplus.io.resolveLocalFileSystemURL('_www/test.txt',function(entry){ if(entry.isFile){mui.toast('是一个文件');} else{mui.toast('不是文件');}},function(e){ mui.toast(e.message);});DirectoryEntry(文件夹及文件操作)属性2、isDirectory:操作对象是否为目录,DirectoryEntry对象其值为trueplus.io.resolveLocalFileSystemURL('_www/',function(entry){ if(entry.isDirectory){mui.toast('是一个文件夹'); }else{mui.toast('不是文件夹');}},function(e){ mui.toast(e.message);});DirectoryEntry(文件夹及文件操作)属性3、name:目录操作对象的名称,不包括路径plus.io.resolveLocalFileSystemURL('_www/',function(entry){ mui.toast();},function(e){ mui.toast(e.message);});DirectoryEntry(文件夹及文件操作)属性4、fullPath:目录操作对象的完整路径,文件系统的绝对路径plus.io.resolveLocalFileSystemURL('_www/',function(entry){ mui.toast(entry.fullPath);},function(e){ mui.toast(e.message);});DirectoryEntry(文件夹及文件操作)常用方法1、
创建或打开子目录:entry.getDirectory(path,flag,succesCB,errorCB);创建或打开目录操作成功通过succesCB回调返回,失败则errorCB返回。plus.io.resolveLocalFileSystemURL('_documents', function(entry){ entry.getDirectory('mytest',{create:true,exclusive:false}, function(entry1){mui.toast('创建或打开成功');}, function(){mui.toast('创建或者打开子目录失败');} )}, function(e){mui.toast('获取io操作对象失败');});DirectoryEntry(文件夹及文件操作)常用方法2、删除目录
entry.remove(succesCB,errorCB);以下情况删除目录将会导致失败:目录中存在文件;删除根目录。plus.io.resolveLocalFileSystemURL('_documents/mytest', function(entry){ entry.remove(function(){mui.toast('删除成功');},
function(e){mui.toast(‘删除文件失败');}); },function(e){mui.toast('获取io操作对象失败');});DirectoryEntry(文件夹及文件操作)3、
创建或打开文件并获取内容:
getFile(path,flag,succesCB,errorCB);plus.io.resolveLocalFileSystemURL('_www', function(entry){ entry.getFile('1.txt',{create:true,exclusive:false}, function(file){ varfileReader=newplus.io.FileReader(); fileReader.readAsText(file,'utf-8');fileReader.onloadend=function(evt){ mui.alert(evt.target.result);} },function(e){mui.toast('打开文件失败');} );},function(e){mui.toast('打开文件夹_www失败');});DirectoryEntry(文件夹及文件操作)4、FileWriter向文件写入内容plus.io.resolveLocalFileSystemURL(‘_documents’, function(entry){entry.getFile('2.txt',{create:true,exclusive:false}, function(file){ file.createWriter(function(writer){ writer.write(‘你好!');mui.toast('写入成功'); },function(){mui.toast('写入失败'); }); },function(e){mui.toast('打开文件失败');} );},function(e){mui.toast('打开文件夹_www失败');});5、readEntries:获取文件列表plus.io.resolveLocalFileSystemURL(“_www”,function(fs){
vardirectoryReader=fs.root.createReader();
directoryReader.readEntries(function(entries){
vari;
varstr=“文件列表:\n”;
for(i=0;i<entries.length;i++){
str+=entries[i].name+“\n”;
}
mui.alert(str);
},function(e){
mui.alert("Readentriesfailed:"+e.message);
});});DirectoryEntry(文件夹及文件操作)课堂练习:1、点击创建按钮弹出对话框,输入文件名,确认后在指定目录下创建新文件;失败显示提示信息;2、点击写入文件按钮弹出对话框,输入文件名,确认后打开对应文件并写入内容;失败显示提示信息;3、点击打开文件按钮弹出对话框,输入文件名,确认后打开对应文件读取文件内容,显示在对话框中;失败显示提示信息;downloader文件下载模块Downloader模块管理网络文件下载任务,用于从服务器下载各种文件,并支持跨域访问操作。通过plus.downloader获取下载管理对象。Downloader下载使用HTTP的GET/POST方式请求下载文件,符合标准HTTP/HTTPS传输协议。plus.downloader.createDownload(url,options,completedCB);参数:url:(String)要下载文件的url地址,仅支持网络资源地址。options:可选下载任务的参数,可通过此参数设置下载任务属性,如保存文件路径、下载优先级等。completedCB:可选下载任务完成回调函数,当下载任务下载完成时触发,成功或失败都会触发。返回值:Download:新建的下载任务对象核心代码1:functioncreateDownload(){ vardtask=plus.downloader.createDownload("/a.doc",{}, funct
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 金融街按揭二手房合同范例
- 高速公路电工聘用合同样本
- 汽车贴息合同范例
- 会计合同模板在
- 申通快递员工合同模板
- 雷电季住宅楼施工合同协议书
- 信息技术专员岗位聘任合同样本
- 农药公司电力安装施工合同
- 音响制品加工合同争议解决
- 标准租房合同范例可复制
- 汉十项目隧道二衬缺陷整治专项施工方案(指挥部上报审批通过)
- 市政道路关键技术标
- Unit 14 I remember meeting all of you in Grade 7 第1课时公开课教学设计【人教版九年级英语】
- 2024年-科技部技术转让合同等模板
- 单孔腹腔镜手术
- 2023年度中、美创新药获批情况跟踪报告:获批药物愈发多元化本土创新力量不断迸发-20240221
- (高清版)TDT 1048-2016 耕作层土壤剥离利用技术规范
- 大学生应具备的职业技能讲解材料
- 第2章导游(课件)《导游业务》(第五版)
- 社会体育指导员协会总结
- 国家安全教育国土安全
评论
0/150
提交评论