资源预览内容
第1页 / 共22页
第2页 / 共22页
第3页 / 共22页
第4页 / 共22页
第5页 / 共22页
第6页 / 共22页
第7页 / 共22页
第8页 / 共22页
第9页 / 共22页
第10页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
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(“Request file system success!“); ,function(e) mui.alert(“Request file system failed: “+ 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(“Resolve file URL failed: “+ e.message ); );IO模块-基础篇方法: 3、convertLocalFileSystemURL(url): 将本地URL路径转换成平台绝对路径 URL地址必须是合法的路径,如果地址不合法则返回null 。 返回值是转换后在平台上的路径,在不同平台或者不同 设备返回的值可能存在差异。 演示代码: var path = plus.io.convertLocalFileSystemURL(_www/a.txt); mui.alert(path);IO模块-基础篇方法: 4、convertAbsoluteFileSystem(path): 将平台绝对路径转换成本地URL路径 功能与convertLocalFileSystemURL方法相反,将绝对路径 转换成相对路径。 演示代码: var path = plus.io.convertLocalFileSystemURL(_www/a.txt); var pathNew = 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对象其值 为false plus.io.resolveLocalFileSystemURL(_www/test.txt, function(entry) if(entry.isFile) mui.toast(是一个文件); elsemui.toast(不是文件); , function(e) mui.toast(e.message); );DirectoryEntry(文件夹及文件操作) 属性 2、isDirectory: 操作对象是否为目录,DirectoryEntry对 象其值为true plus.io.resolveLocalFileSystemURL(_www/, function(entry) if(entry.isDirectory)mui.toast(是一个文件夹); elsemui.toast(不是文件夹); , function(e) mui.toast(e.message); );DirectoryEntry(文件夹及文件操作)属性 3、name: 目录操作对象的名称,不包括路径 plus.io.resolveLocalFileSystemURL(_www/, function(entry) mui.toast(entry.name); , 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) var fileReader =new plus.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) var directoryReader = fs.root.createReader(); directoryReader.readEntries( function( entries ) var i; var str=“文件列表:n”; for( i=0; i entries.length; i+ ) str += entriesi.name + “n”; mui.alert( str); , function ( e ) mui.alert( “Read entries failed: “ + 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:
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号