io.html 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759
  1. <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
  6. <meta name="HandheldFriendly" content="true">
  7. <meta name="MobileOptimized" content="320">
  8. <title>IO Document</title>
  9. <link rel="stylesheet" type="text/css" href="res/doc.css" charset="utf-8">
  10. <link rel="stylesheet" type="text/css" href="res/prettify.sons.css" charset="utf-8">
  11. <script type="text/javascript" src="res/doc.js" charset="utf-8"></script><script type="text/javascript" src="res/prettify.js" charset="utf-8"></script>
  12. </head>
  13. <body><div id="content" class="content">
  14. <h1><a name="plus.io">io</a></h1>
  15. <p>IO模块管理本地文件系统,用于对文件系统的目录浏览、文件的读取、文件的写入等操作。通过plus.io可获取文件系统管理对象。</p>
  16. <h2>常量:</h2>
  17. <ul>
  18. <li>
  19. <a href="#plus.io.PRIVATE_WWW">PRIVATE_WWW</a>: 应用运行资源目录常量</li>
  20. <li>
  21. <a href="#plus.io.PRIVATE_DOC">PRIVATE_DOC</a>: 应用私有文档目录常量</li>
  22. <li>
  23. <a href="#plus.io.PUBLIC_DOCUMENTS">PUBLIC_DOCUMENTS</a>: 程序公用文档目录常量</li>
  24. <li>
  25. <a href="#plus.io.PUBLIC_DOWNLOADS">PUBLIC_DOWNLOADS</a>: 程序公用下载目录常量</li>
  26. </ul>
  27. <h2>方法:</h2>
  28. <ul>
  29. <li>
  30. <a href="#plus.io.requestFileSystem">requestFileSystem</a>: 请求本地文件系统对象</li>
  31. <li>
  32. <a href="#plus.io.resolveLocalFileSystemURL">resolveLocalFileSystemURL</a>: 通过URL参数获取目录对象或文件对象</li>
  33. <li>
  34. <a href="#plus.io.convertLocalFileSystemURL">convertLocalFileSystemURL</a>: 将本地URL路径转换成平台绝对路径</li>
  35. <li>
  36. <a href="#plus.io.convertAbsoluteFileSystem">convertAbsoluteFileSystem</a>: 将平台绝对路径转换成本地URL路径</li>
  37. <li>
  38. <a href="#plus.io.getAudioInfo">getAudioInfo</a>: 获取音频文件信息</li>
  39. <li>
  40. <a href="#plus.io.getFileInfo">getFileInfo</a>: 获取文件信息</li>
  41. <li>
  42. <a href="#plus.io.getImageInfo">getImageInfo</a>: 获取图片信息</li>
  43. <li>
  44. <a href="#plus.io.getVideoInfo">getVideoInfo</a>: 获取视频文件信息</li>
  45. </ul>
  46. <h2>对象:</h2>
  47. <ul>
  48. <li>
  49. <a href="#plus.io.DirectoryEntry">DirectoryEntry</a>: 文件系统中的目录对象,用于管理特定的本地目录</li>
  50. <li>
  51. <a href="#plus.io.DirectoryReader">DirectoryReader</a>: 读取目录信息对象,用于获取目录中包含的文件及子目录</li>
  52. <li>
  53. <a href="#plus.io.File">File</a>: 文件系统中的文件数据对象,用于获取文件的数据</li>
  54. <li>
  55. <a href="#plus.io.FileEntry">FileEntry</a>: 文件系统中的文件对象,用于管理特定的本地文件</li>
  56. <li>
  57. <a href="#plus.io.FileReader">FileReader</a>: 文件系统中的读取文件对象,用于获取文件的内容</li>
  58. <li>
  59. <a href="#plus.io.FileWriter">FileWriter</a>: 文件系统中的写文件对象,用于写入文件内容</li>
  60. <li>
  61. <a href="#plus.io.FileSystem">FileSystem</a>: 文件系统对象,用于管理特定本地文件目录</li>
  62. <li>
  63. <a href="#plus.io.Flags">Flags</a>: JSON对象,获取文件操作的参数</li>
  64. <li>
  65. <a href="#plus.io.Metadata">Metadata</a>: JSON对象,保存文件或目录的状态信息对象</li>
  66. <li>
  67. <a href="#plus.io.FileEvent">FileEvent</a>: 文件或目录操作事件对象</li>
  68. <li>
  69. <a href="#plus.io.URLType">URLType</a>: 文件路径类型</li>
  70. <li>
  71. <a href="#plus.io.RelativeURL">RelativeURL</a>: 相对路径URL</li>
  72. <li>
  73. <a href="#plus.io.LocalURL">LocalURL</a>: 本地路径URL</li>
  74. <li>
  75. <a href="#plus.io.RemoteURL">RemoteURL</a>: 网络路径URL</li>
  76. <li>
  77. <a href="#plus.io.AudioInfo">AudioInfo</a>: JSON对象,音频文件信息对象</li>
  78. <li>
  79. <a href="#plus.io.FileInfo">FileInfo</a>: JSON对象,文件信息对象</li>
  80. <li>
  81. <a href="#plus.io.ImageInfo">ImageInfo</a>: JSON对象,图片信息对象</li>
  82. <li>
  83. <a href="#plus.io.VideoInfo">VideoInfo</a>: JSON对象,视频文件信息对象</li>
  84. </ul>
  85. <h2>回调方法:</h2>
  86. <ul>
  87. <li>
  88. <a href="#plus.io.FileEventCallback">FileEventCallback</a>: 文件事件回调</li>
  89. <li>
  90. <a href="#plus.io.FileSystemSuccessCallback">FileSystemSuccessCallback</a>: 请求文件系统成功的回调函数</li>
  91. <li>
  92. <a href="#plus.io.FileResolveSuccessCallback">FileResolveSuccessCallback</a>: 通过URL参数获取目录或文件对象成功的回调函数</li>
  93. <li>
  94. <a href="#plus.io.MetadataSuccessCallback">MetadataSuccessCallback</a>: 获取文件或目录状态信息成功的回调函数</li>
  95. <li>
  96. <a href="#plus.io.EntrySuccessCallback">EntrySuccessCallback</a>: 操作文件或目录对象成功的回调函数</li>
  97. <li>
  98. <a href="#plus.io.EntrysSuccessCallback">EntrysSuccessCallback</a>: 操作文件或目录对象数组成功的回调函数</li>
  99. <li>
  100. <a href="#plus.io.FileWriterSuccessCallback">FileWriterSuccessCallback</a>: 写文件操作成功的回调函数</li>
  101. <li>
  102. <a href="#plus.io.FileSuccessCallback">FileSuccessCallback</a>: 文件操作成功的回调函数</li>
  103. <li>
  104. <a href="#plus.io.FileErrorCallback">FileErrorCallback</a>: 文件操作失败的回调函数</li>
  105. <li>
  106. <a href="#plus.io.IOSuccessCallback">IOSuccessCallback</a>: 成功回调函数</li>
  107. <li>
  108. <a href="#plus.io.IOFailCallback">IOFailCallback</a>: 失败回调函数</li>
  109. <li>
  110. <a href="#plus.io.IOCompleteCallback">IOCompleteCallback</a>: 操作完成回调函数</li>
  111. </ul>
  112. <h2>权限:</h2>
  113. <p>5+功能模块(permissions)</p>
  114. <pre class="prettyprint linenums">
  115. {
  116. // ...
  117. "permissions":{
  118. // ...
  119. "File": {
  120. "description": "文件系统"
  121. }
  122. }
  123. }
  124. </pre>
  125. <h1><a name="plus.io.DirectoryEntry">DirectoryEntry</a></h1>
  126. <p>文件系统中的目录对象,用于管理特定的本地目录</p>
  127. <h2>属性:</h2>
  128. <ul>
  129. <li>
  130. <a href="#plus.io.DirectoryEntry.isFile">isFile</a>: 操作对象的是否为文件,DirectoryEntry对象固定其值为false</li>
  131. <li>
  132. <a href="#plus.io.DirectoryEntry.isDirectory">isDirectory</a>: 操作对象是否为目录,DirectoryEntry对象固定其值为true</li>
  133. <li>
  134. <a href="#plus.io.DirectoryEntry.name">name</a>: 目录操作对象的名称,不包括路径</li>
  135. <li>
  136. <a href="#plus.io.DirectoryEntry.fullPath">fullPath</a>: 目录操作对象的完整路径,文件系统的绝对路径</li>
  137. <li>
  138. <a href="#plus.io.DirectoryEntry.fileSystem">fileSystem</a>: 文件操作对象所属的文件系统对象,参考FileSystem</li>
  139. </ul>
  140. <h2>方法:</h2>
  141. <ul>
  142. <li>
  143. <a href="#plus.io.DirectoryEntry.getMetadata">getMetadata</a>: 获取目录的属性</li>
  144. <li>
  145. <a href="#plus.io.DirectoryEntry.moveTo">moveTo</a>: 移动目录</li>
  146. <li>
  147. <a href="#plus.io.DirectoryEntry.copyTo">copyTo</a>: 拷贝目录</li>
  148. <li>
  149. <a href="#plus.io.DirectoryEntry.toURL">toURL</a>: 获取目录路径转换为URL地址</li>
  150. <li>
  151. <a href="#plus.io.DirectoryEntry.toLocalURL">toLocalURL</a>: 获取目录路径转换为本地路径URL地址</li>
  152. <li>
  153. <a href="#plus.io.DirectoryEntry.toRemoteURL">toRemoteURL</a>: 获取目录路径转换为网络路径URL地址</li>
  154. <li>
  155. <a href="#plus.io.DirectoryEntry.remove">remove</a>: 删除目录</li>
  156. <li>
  157. <a href="#plus.io.DirectoryEntry.getParent">getParent</a>: 获取目录所属的父目录</li>
  158. <li>
  159. <a href="#plus.io.DirectoryEntry.createReader">createReader</a>: 创建目录读取对象</li>
  160. <li>
  161. <a href="#plus.io.DirectoryEntry.getDirectory">getDirectory</a>: 创建或打开子目录</li>
  162. <li>
  163. <a href="#plus.io.DirectoryEntry.getFile">getFile</a>: 创建或打开文件</li>
  164. <li>
  165. <a href="#plus.io.DirectoryEntry.removeRecursively">removeRecursively</a>: 递归删除目录</li>
  166. </ul>
  167. <h1><a name="plus.io.DirectoryReader">DirectoryReader</a></h1>
  168. <p>读取目录信息对象,用于获取目录中包含的文件及子目录</p>
  169. <h2>方法:</h2>
  170. <ul><li>
  171. <a href="#plus.io.DirectoryReader.readEntries">readEntries</a>: 获取当前目录中的所有文件和子目录</li></ul>
  172. <h1><a name="plus.io.File">File</a></h1>
  173. <p>文件系统中的文件数据对象,用于获取文件的数据</p>
  174. <h2>属性:</h2>
  175. <ul>
  176. <li>
  177. <a href="#plus.io.File.size">size</a>: 文件数据对象的数据大小,单位为字节</li>
  178. <li>
  179. <a href="#plus.io.File.type">type</a>: 文件数据对象MIME类型</li>
  180. <li>
  181. <a href="#plus.io.File.name">name</a>: 文件数据对象的名称,不包括路径</li>
  182. <li>
  183. <a href="#plus.io.File.lastModifiedDate">lastModifiedDate</a>: 文件对象的最后修改时间</li>
  184. </ul>
  185. <h2>方法:</h2>
  186. <ul>
  187. <li>
  188. <a href="#plus.io.File.slice">slice</a>: 获取文件指定的数据内容</li>
  189. <li>
  190. <a href="#plus.io.File.close">close</a>: 关闭文件数据对象</li>
  191. </ul>
  192. <h1><a name="plus.io.FileEntry">FileEntry</a></h1>
  193. <p>文件系统中的文件对象,用于管理特定的本地文件</p>
  194. <h2>属性:</h2>
  195. <ul>
  196. <li>
  197. <a href="#plus.io.FileEntry.isFile">isFile</a>: 文件操作对象的是否为文件,FileEntry对象固定其值为true</li>
  198. <li>
  199. <a href="#plus.io.FileEntry.isDirectory">isDirectory</a>: 文件操作对象是否为目录,FileEntry对象固定其值为false</li>
  200. <li>
  201. <a href="#plus.io.FileEntry.name">name</a>: 文件操作对象的名称,不包括路径</li>
  202. <li>
  203. <a href="#plus.io.FileEntry.fullPath">fullPath</a>: 文件操作对象的完整路径,文件系统的绝对路径</li>
  204. <li>
  205. <a href="#plus.io.FileEntry.fileSystem">fileSystem</a>: 文件操作对象所属的文件系统对象,参考FileSystem</li>
  206. </ul>
  207. <h2>方法:</h2>
  208. <ul>
  209. <li>
  210. <a href="#plus.io.FileEntry.getMetadata">getMetadata</a>: 获取文件的属性信息</li>
  211. <li>
  212. <a href="#plus.io.FileEntry.moveTo">moveTo</a>: 移动文件</li>
  213. <li>
  214. <a href="#plus.io.FileEntry.copyTo">copyTo</a>: 拷贝文件</li>
  215. <li>
  216. <a href="#plus.io.FileEntry.toURL">toURL</a>: 获取文件路径转换为URL地址</li>
  217. <li>
  218. <a href="#plus.io.FileEntry.toLocalURL">toLocalURL</a>: 获取文件路径转换为本地路径URL地址</li>
  219. <li>
  220. <a href="#plus.io.FileEntry.toRemoteURL">toRemoteURL</a>: 获取文件路径转换为网络路径URL地址</li>
  221. <li>
  222. <a href="#plus.io.FileEntry.remove">remove</a>: 删除文件</li>
  223. <li>
  224. <a href="#plus.io.FileEntry.getParent">getParent</a>: 获取文件所属的父目录</li>
  225. <li>
  226. <a href="#plus.io.FileEntry.createWriter">createWriter</a>: 获取文件关联的写文件操作对象FileWriter</li>
  227. <li>
  228. <a href="#plus.io.FileEntry.file">file</a>: 获取文件数据对象</li>
  229. </ul>
  230. <h1><a name="plus.io.FileReader">FileReader</a></h1>
  231. <p>文件系统中的读取文件对象,用于获取文件的内容</p>
  232. <h2>说明:</h2>
  233. <p class="des">
  234. FileReader对象是从设备文件系统读取文件FileReader对象是从设备文件系统读取文件的一种方式,文件以文本或者Base64编码的字符串形式读出来。
  235. 用户注册自己的事件监听器来接收loadstart、progress、load、loadend、error和abort事件。
  236. </p>
  237. <h2>构造:</h2>
  238. <ul><li>
  239. <a href="#plus.io.FileReader.FileReader">FileReader</a>: 创建读取文件对象</li></ul>
  240. <h2>常量:</h2>
  241. <ul>
  242. <li>
  243. <a href="#plus.io.FileReader.EMPTY">EMPTY</a>: 值为0,开始读取文件状态</li>
  244. <li>
  245. <a href="#plus.io.FileReader.LOADING">LOADING</a>: 值为1,正在读取文件状态</li>
  246. <li>
  247. <a href="#plus.io.FileReader.DONE">DONE</a>: 值为2,读文件操作完成状态</li>
  248. </ul>
  249. <h2>属性:</h2>
  250. <ul>
  251. <li>
  252. <a href="#plus.io.FileReader.readyState">readyState</a>: 当前读取文件所处的状态</li>
  253. <li>
  254. <a href="#plus.io.FileReader.result">result</a>: 已读取文件的内容</li>
  255. <li>
  256. <a href="#plus.io.FileReader.error">error</a>: 文件操作错误代码</li>
  257. </ul>
  258. <h2>方法:</h2>
  259. <ul>
  260. <li>
  261. <a href="#plus.io.FileReader.abort">abort</a>: 终止文件读取操作</li>
  262. <li>
  263. <a href="#plus.io.FileReader.readAsDataURL">readAsDataURL</a>: 以URL编码格式读取文件数据内容</li>
  264. <li>
  265. <a href="#plus.io.FileReader.readAsText">readAsText</a>: 以文本格式读取文件数据内容</li>
  266. </ul>
  267. <h2>事件:</h2>
  268. <ul>
  269. <li>
  270. <a href="#plus.io.FileReader.onloadstart">onloadstart</a>: 读取文件开始时的回调函数</li>
  271. <li>
  272. <a href="#plus.io.FileReader.onprogress">onprogress</a>: 读取文件过程中的回调函数</li>
  273. <li>
  274. <a href="#plus.io.FileReader.onload">onload</a>: 读取文件成功完成的回调函数</li>
  275. <li>
  276. <a href="#plus.io.FileReader.onabort">onabort</a>: 取消读取文件时的回调函数</li>
  277. <li>
  278. <a href="#plus.io.FileReader.onerror">onerror</a>: 文件读取操作失败时调用的回调函数</li>
  279. <li>
  280. <a href="#plus.io.FileReader.onloadend">onloadend</a>: 文件读取操作完成时的回调函数</li>
  281. </ul>
  282. <h1><a name="plus.io.FileWriter">FileWriter</a></h1>
  283. <p>文件系统中的写文件对象,用于写入文件内容</p>
  284. <h2>说明:</h2>
  285. <p class="des">
  286. FileWriter对象是向设备文件系统写入文件的一种方式,用户注册自己的事件监听器来接收writestart、progress、write、writeend、error和abort事件。
  287. 一个FileWriter对象是为单个文件的操作而创建,可以使用该对象多次对相应文件进行写入操作。
  288. FileWriter维护该文件的指针位置及长度属性,这样就可以寻找和写入文件的任何地方。
  289. 默认情况下,FileWriter从文件的开头开始写入(将覆盖现有数据),seek方法可设置文件操作指定位置,如fw.seek(fw.length-1)写入操作就会从文件的末尾开始。
  290. </p>
  291. <h2>常量:</h2>
  292. <ul>
  293. <li>
  294. <a href="#plus.io.FileWriter.INIT">INIT</a>: 值为0,写文件初始化状态</li>
  295. <li>
  296. <a href="#plus.io.FileWriter.WRITING">WRITING</a>: 值为1,正在写入文件状态</li>
  297. <li>
  298. <a href="#plus.io.FileWriter.DONE">DONE</a>: 值为2,写文件操作完成状态</li>
  299. </ul>
  300. <h2>属性:</h2>
  301. <ul>
  302. <li>
  303. <a href="#plus.io.FileWriter.readyState">readyState</a>: 当前写入文件所处的状态</li>
  304. <li>
  305. <a href="#plus.io.FileWriter.length">length</a>: 文件当前的长度,单位为字节</li>
  306. <li>
  307. <a href="#plus.io.FileWriter.position">position</a>: 文件当前操作的指针位置</li>
  308. <li>
  309. <a href="#plus.io.FileWriter.error">error</a>: 文件写入操作错误代码</li>
  310. </ul>
  311. <h2>方法:</h2>
  312. <ul>
  313. <li>
  314. <a href="#plus.io.FileWriter.abort">abort</a>: 终止文件写入操作</li>
  315. <li>
  316. <a href="#plus.io.FileWriter.seek">seek</a>: 定位文件操作位置</li>
  317. <li>
  318. <a href="#plus.io.FileWriter.truncate">truncate</a>: 按照指定长度截断文件</li>
  319. <li>
  320. <a href="#plus.io.FileWriter.write">write</a>: 向文件中写入数据</li>
  321. </ul>
  322. <h2>事件:</h2>
  323. <ul>
  324. <li>
  325. <a href="#plus.io.FileWriter.onwritestart">onwritestart</a>: 写入文件开始时的回调函数</li>
  326. <li>
  327. <a href="#plus.io.FileWriter.onprogress">onprogress</a>: 写入文件过程中的回调函数</li>
  328. <li>
  329. <a href="#plus.io.FileWriter.onwrite">onwrite</a>: 写入文件成功完成的回调函数</li>
  330. <li>
  331. <a href="#plus.io.FileWriter.onabort">onabort</a>: 取消写入文件时的回调函数</li>
  332. <li>
  333. <a href="#plus.io.FileWriter.onerror">onerror</a>: 文件写入操作失败时调用的回调函数</li>
  334. <li>
  335. <a href="#plus.io.FileWriter.onwriteend">onwriteend</a>: 文件写入操作完成时的回调函数</li>
  336. </ul>
  337. <h1><a name="plus.io.FileSystem">FileSystem</a></h1>
  338. <p>文件系统对象,用于管理特定本地文件目录</p>
  339. <h2>说明:</h2>
  340. <p class="des">
  341. 文件系统对象表示一个应用可访问的根目录。name属性用于标识此根目录的名称,与LocalFileSystem中的文件系统类型一一对应。root属性为文件目录对象,用于实际操作文件系统,参考DirectoryEntry。
  342. </p>
  343. <h2>属性:</h2>
  344. <ul>
  345. <li>
  346. <a href="#plus.io.FileSystem.name">name</a>: 文件系统的名称</li>
  347. <li>
  348. <a href="#plus.io.FileSystem.root">root</a>: 文件系统的根目录</li>
  349. </ul>
  350. <h1><a name="plus.io.Flags">Flags</a></h1>
  351. <p>JSON对象,获取文件操作的参数</p>
  352. <h2>属性:</h2>
  353. <ul>
  354. <li>create: <em>(<font class="type">Boolean</font>
  355. 类型
  356. )</em>是否创建对象标记<br><p>指示如果文件或目录不存在时是否进行创建,默认值为false。</p>
  357. </li>
  358. <li>exclusive: <em>(<font class="type">Boolean</font>
  359. 类型
  360. )</em>反向操作标记<br><p>其本身没有任何效果,需与create属性值设置为true时一起使用,如果目标文件或目录已经存在则会导致文件或目录打开失败,默认值为false。</p>
  361. </li>
  362. </ul>
  363. <h1><a name="plus.io.Metadata">Metadata</a></h1>
  364. <p>JSON对象,保存文件或目录的状态信息对象</p>
  365. <h2>说明:</h2>
  366. <p class="des">可通过DirectoryEntry或FileEntry对象的getMetaData方法获取</p>
  367. <h2>属性:</h2>
  368. <ul>
  369. <li>modificationTime: <em>(<font class="type">Date</font>
  370. 类型
  371. )</em>文件或目录的最后修改时间<br>
  372. </li>
  373. <li>size: <em>(<font class="type">Number</font>
  374. 类型
  375. )</em>文件的大小<br><p>若获取的是目录对象的属性则值为0。</p>
  376. </li>
  377. <li>directoryCount: <em>(<font class="type">Number</font>
  378. 类型
  379. )</em>包含的子目录数<br><p>若自身是文件则其值为0。</p>
  380. </li>
  381. <li>fileCount: <em>(<font class="type">Number</font>
  382. 类型
  383. )</em>目录的文件数<br><p>若自身是文件则其值为0。</p>
  384. </li>
  385. </ul>
  386. <h1><a name="plus.io.FileEvent">FileEvent</a></h1>
  387. <p>文件或目录操作事件对象</p>
  388. <h2>说明:</h2>
  389. <p class="des">
  390. 所有文件或目录操作事件回调函数中都创建该对象的实例。
  391. 该对象从DOMEvent继承而来,可通过该其target属性获取事件触发的文件或目录操作对象。
  392. </p>
  393. <h2>属性:</h2>
  394. <ul><li>target: <em>(<a href="#plus.io.DirectoryEntry">DirectoryEntry</a>
  395. 类型
  396. )</em>文件或目录操作对象<br><p>在不同的回调中指向的对象不同,可指向的对象包括:FileEntry、DirectoryEntry、FileReader、FileWriter。</p>
  397. </li></ul>
  398. <h1><a name="plus.io.URLType">URLType</a></h1>
  399. <p>文件路径类型</p>
  400. <h2>说明:</h2>
  401. <p class="des">在文件系统中的文件路径需转换成URL格式,已方便runtime快速加载。</p>
  402. <h1><a name="plus.io.RelativeURL">RelativeURL</a></h1>
  403. <p>相对路径URL</p>
  404. <h2>说明:</h2>
  405. <p class="des">只能在扩展API中使用,相对于基座提供的特定目录,以“_”开头。</p>
  406. <h2>常量:</h2>
  407. <ul>
  408. <li>"_www": <em>(<font class="type">DOMString</font>
  409. 类型
  410. )</em>应用资源目录<br><p>
  411. 保存应用的所有html、css、js等资源文件,与文件系统中根目录PRIVATE_WWW一致,后面加相对路径如“_www/res/icon.png”。
  412. 注意:应用资源目录是只读目录,只能读取次目录下的文件,不能修改或新建。
  413. </p>
  414. </li>
  415. <li>"_doc": <em>(<font class="type">DOMString</font>
  416. 类型
  417. )</em>应用私有文档目录<br><p>用于保存应用运行期业务逻辑数据,与文件系统中根目录PRIVATE_DOCUMENTS,如“_doc/userdata.xml”。</p>
  418. </li>
  419. <li>"_documents": <em>(<font class="type">DOMString</font>
  420. 类型
  421. )</em>程序公用文档目录<br><p>用于保存程序中各应用间可共享文件的目录,与文件系统中根目录PUBLIC_DOCUMENTS,如“_document/share.doc”。</p>
  422. </li>
  423. <li>"_downloads": <em>(<font class="type">DOMString</font>
  424. 类型
  425. )</em>程序公用下载目录 <br><p>用于保存程序下载文件的目录,与文件系统中根目录PUBLIC_DOWNLOADS,如“_download/mydoc.doc”。</p>
  426. </li>
  427. </ul>
  428. <h1><a name="plus.io.LocalURL">LocalURL</a></h1>
  429. <p>本地路径URL</p>
  430. <h2>说明:</h2>
  431. <p class="des">
  432. 可在html页面中直接访问本地资源,以“file:///”开头,后面跟随系统的绝对路径。
  433. 如示例:“file:///D:/res/hello.html”。
  434. </p>
  435. <h1><a name="plus.io.RemoteURL">RemoteURL</a></h1>
  436. <p>网络路径URL</p>
  437. <h2>说明:</h2>
  438. <p class="des">
  439. 可在html页面中以网络资源模式访问本地资源,以“http://”开头,后面跟随相对路径。
  440. 如示例:“http://localhost:13131/_www/res/icon.png”,其中“_www”字段可支持类型与相对路径URL一致。
  441. </p>
  442. <h1><a name="plus.io.AudioInfo">AudioInfo</a></h1>
  443. <p>JSON对象,音频文件信息对象</p>
  444. <h2>说明:</h2>
  445. <p class="des">通过getAudioInfo方法的成功回调函数返回</p>
  446. <h2>属性:</h2>
  447. <ul><li>duration: <em>(<font class="type">Number</font>
  448. 类型
  449. )</em>音频长度<br><p>
  450. 单位为秒(s)。
  451. </p>
  452. </li></ul>
  453. <h1><a name="plus.io.FileInfo">FileInfo</a></h1>
  454. <p>JSON对象,文件信息对象</p>
  455. <h2>说明:</h2>
  456. <p class="des">通过getFileInfo方法的成功回调函数返回</p>
  457. <h2>属性:</h2>
  458. <ul>
  459. <li>digest: <em>(<font class="type">String</font>
  460. 类型
  461. )</em>文件摘要<br><p>
  462. 按照传入的 digestAlgorithm 计算得出的文件摘要信息。
  463. </p>
  464. </li>
  465. <li>size: <em>(<font class="type">Number</font>
  466. 类型
  467. )</em>文件大小<br><p>
  468. 单位为字节。
  469. </p>
  470. </li>
  471. </ul>
  472. <h1><a name="plus.io.ImageInfo">ImageInfo</a></h1>
  473. <p>JSON对象,图片信息对象</p>
  474. <h2>说明:</h2>
  475. <p class="des">通过getImageInfo方法的成功回调函数返回</p>
  476. <h2>属性:</h2>
  477. <ul>
  478. <li>height: <em>(<font class="type">Number</font>
  479. 类型
  480. )</em>图片的原始高度<br><p>若获取的是目录对象的属性则值为0。</p>
  481. </li>
  482. <li>orientation: <em>(<font class="type">String</font>
  483. 类型
  484. )</em>拍照时设备方向信息<br><p>
  485. 可取值:
  486. "up" - 默认方向(手机横持拍照),对应 Exif 中的 1,或无 orientation 信息;
  487. "up-mirrored" - 同 up,但镜像翻转,对应 Exif 中的 2;
  488. "down" - 旋转180度,对应 Exif 中的 3;
  489. "down-mirrored" - 同 down,但镜像翻转,对应 Exif 中的 4;
  490. "left-mirrored" - 同 left,但镜像翻转,对应 Exif 中的 5;
  491. "right" - 顺时针旋转90度,对应 Exif 中的 6;
  492. "right-mirrored" - 同 right,但镜像翻转,对应 Exif 中的 7;
  493. "left" - 逆时针旋转90度,对应 Exif 中的 8。
  494. 更多详情参考图片扩展中的方向信息:http://sylvana.net/jpegcrop/exif_orientation.html。
  495. </p>
  496. </li>
  497. <li>path: <em>(<font class="type">String</font>
  498. 类型
  499. )</em>图片的本地路径<br><p>
  500. 绝对路径,以"file://"开头。
  501. </p>
  502. </li>
  503. <li>type: <em>(<font class="type">String</font>
  504. 类型
  505. )</em>图片格式<br>
  506. </li>
  507. <li>width: <em>(<font class="type">Number</font>
  508. 类型
  509. )</em>图片的原始宽度<br><p>
  510. 单位为像素(px),不考虑旋转。
  511. </p>
  512. </li>
  513. </ul>
  514. <h1><a name="plus.io.VideoInfo">VideoInfo</a></h1>
  515. <p>JSON对象,视频文件信息对象</p>
  516. <h2>说明:</h2>
  517. <p class="des">通过getVideoInfo方法的成功回调函数返回</p>
  518. <h2>属性:</h2>
  519. <ul>
  520. <li>duration: <em>(<font class="type">Number</font>
  521. 类型
  522. )</em>视频长度<br><p>
  523. 单位为秒(s)。
  524. </p>
  525. </li>
  526. <li>height: <em>(<font class="type">Number</font>
  527. 类型
  528. )</em>视频高度<br><p>
  529. 视频的真实像素值高度。
  530. </p>
  531. </li>
  532. <li>resolution: <em>(<font class="type">String</font>
  533. 类型
  534. )</em>视频分辨率<br><p>
  535. 格式为“宽*高”,如“1280*720”。
  536. </p>
  537. </li>
  538. <li>size: <em>(<font class="type">Number</font>
  539. 类型
  540. )</em>文件大小<br><p>
  541. 单位为字节。
  542. </p>
  543. </li>
  544. <li>width: <em>(<font class="type">Number</font>
  545. 类型
  546. )</em>视频宽度<br><p>
  547. 视频的真实像素值宽度。
  548. </p>
  549. </li>
  550. </ul>
  551. <h1><a name="plus.io.FileEventCallback">FileEventCallback</a></h1>
  552. <p>文件事件回调</p>
  553. <pre class="prettyprint linenums">
  554. void onEvent( event ) {
  555. // Event code.
  556. }
  557. </pre>
  558. <h2>说明:</h2>
  559. <p class="des">
  560. 文件或目录操作回调事件。
  561. 通常在FileReader和FileWriter对象的事件函数中触发。
  562. </p>
  563. <h2>参数:</h2>
  564. <ul><li>event:
  565. <em>(
  566. <a href="#plus.io.FileEvent">FileEvent</a>
  567. )
  568. 必选 </em>文件事件对象<br>
  569. </li></ul>
  570. <h2>返回值:</h2>
  571. <font class="type">void</font>
  572. : 无<h1><a name="plus.io.FileSystemSuccessCallback">FileSystemSuccessCallback</a></h1>
  573. <p>请求文件系统成功的回调函数</p>
  574. <pre class="prettyprint linenums">
  575. void onSuccess( fs ) {
  576. // File System operate code.
  577. }
  578. </pre>
  579. <h2>参数:</h2>
  580. <ul><li>fs:
  581. <em>(
  582. <a href="#plus.io.FileSystem">FileSystem</a>
  583. )
  584. 必选 </em>请求到的文件系统对象<br>
  585. </li></ul>
  586. <h2>返回值:</h2>
  587. <font class="type">void</font>
  588. : 无<h1><a name="plus.io.FileResolveSuccessCallback">FileResolveSuccessCallback</a></h1>
  589. <p>通过URL参数获取目录或文件对象成功的回调函数</p>
  590. <pre class="prettyprint linenums">
  591. void onSuccess( entry ) {
  592. // File or Direcory entry operate code.
  593. }
  594. </pre>
  595. <h2>参数:</h2>
  596. <ul><li>entry:
  597. <em>(
  598. <a href="#plus.io.DirectoryEntry">DirectoryEntry</a>
  599. )
  600. 必选 </em>请求到的目录或文件对象<br>可指向文件或目录对象(DirectoryEntry|FileEntry)。</li></ul>
  601. <h2>返回值:</h2>
  602. <font class="type">void</font>
  603. : 无<h1><a name="plus.io.MetadataSuccessCallback">MetadataSuccessCallback</a></h1>
  604. <p>获取文件或目录状态信息成功的回调函数</p>
  605. <pre class="prettyprint linenums">
  606. void onSuccess( metadata ) {
  607. // Metadata code.
  608. }
  609. </pre>
  610. <h2>参数:</h2>
  611. <ul><li>metadata:
  612. <em>(
  613. <a href="#plus.io.Metadata">Metadata</a>
  614. )
  615. 必选 </em>文件或目录的状态信息<br>
  616. </li></ul>
  617. <h2>返回值:</h2>
  618. <font class="type">void</font>
  619. : 无<h1><a name="plus.io.EntrySuccessCallback">EntrySuccessCallback</a></h1>
  620. <p>操作文件或目录对象成功的回调函数</p>
  621. <pre class="prettyprint linenums">
  622. void onSuccess( entry ) {
  623. // Entry code.
  624. }
  625. </pre>
  626. <h2>参数:</h2>
  627. <ul><li>entry:
  628. <em>(
  629. <a href="#plus.io.DirectoryEntry">DirectoryEntry</a>
  630. )
  631. 必选 </em>文件或目录对象的引用<br>可指向文件或目录对象(DirectoryEntry|FileEntry)。</li></ul>
  632. <h2>返回值:</h2>
  633. <font class="type">void</font>
  634. : 无<h1><a name="plus.io.EntrysSuccessCallback">EntrysSuccessCallback</a></h1>
  635. <p>操作文件或目录对象数组成功的回调函数</p>
  636. <pre class="prettyprint linenums">
  637. void onSuccess( entrys ) {
  638. // Entrys code.
  639. }
  640. </pre>
  641. <h2>参数:</h2>
  642. <ul><li>entrys:
  643. <em>(
  644. <a href="#plus.io.DirectoryEntry">DirectoryEntry</a>
  645. )
  646. 必选 </em>文件或目录对象数组<br>可指向文件或目录对象数组(DirectoryEntry[]|FileEntry[])。</li></ul>
  647. <h2>返回值:</h2>
  648. <font class="type">void</font>
  649. : 无<h1><a name="plus.io.FileWriterSuccessCallback">FileWriterSuccessCallback</a></h1>
  650. <p>写文件操作成功的回调函数</p>
  651. <pre class="prettyprint linenums">
  652. void onSuccess( writer ) {
  653. // FileWriter code.
  654. }
  655. </pre>
  656. <h2>参数:</h2>
  657. <ul><li>writer:
  658. <em>(
  659. <a href="#plus.io.FileWriter">FileWriter</a>
  660. )
  661. 必选 </em>写文件对象的引用<br>
  662. </li></ul>
  663. <h2>返回值:</h2>
  664. <font class="type">void</font>
  665. : 无<h1><a name="plus.io.FileSuccessCallback">FileSuccessCallback</a></h1>
  666. <p>文件操作成功的回调函数</p>
  667. <pre class="prettyprint linenums">
  668. void onSuccess( file ) {
  669. // file code.
  670. }
  671. </pre>
  672. <h2>参数:</h2>
  673. <ul><li>file:
  674. <em>(
  675. <font class="type">File</font>
  676. )
  677. 必选 </em>文件数据对象的引用<br>
  678. </li></ul>
  679. <h2>返回值:</h2>
  680. <font class="type">void</font>
  681. : 无<h1><a name="plus.io.FileErrorCallback">FileErrorCallback</a></h1>
  682. <p>文件操作失败的回调函数</p>
  683. <pre class="prettyprint linenums">
  684. void onError( error ) {
  685. // Error code.
  686. }
  687. </pre>
  688. <h2>参数:</h2>
  689. <ul><li>error:
  690. <em>(
  691. <font class="type">DOMException</font>
  692. )
  693. 必选 </em>文件操作失败的信息<br>
  694. </li></ul>
  695. <h2>返回值:</h2>
  696. <font class="type">void</font>
  697. : 无<h1><a name="plus.io.IOSuccessCallback">IOSuccessCallback</a></h1>
  698. <p>成功回调函数</p>
  699. <pre class="prettyprint linenums">
  700. void onSuccess(event){
  701. }
  702. </pre>
  703. <h2>说明:</h2>
  704. <p class="des">
  705. 不同接口触发的成功回调参数event包含的属性存在差异,具体参考对应的接口描述说明。
  706. </p>
  707. <h2>参数:</h2>
  708. <ul><li>event:
  709. <em>(
  710. <font class="type">json</font>
  711. )
  712. 必选 </em>回调参数<br>
  713. 回调参数包含的属性由调用接口决定,具体参考对应的接口描述说明。
  714. </li></ul>
  715. <h2>返回值:</h2>
  716. <font class="type">void</font>
  717. : 无<h1><a name="plus.io.IOFailCallback">IOFailCallback</a></h1>
  718. <p>失败回调函数</p>
  719. <pre class="prettyprint linenums">
  720. function void onFail(DOMException error){
  721. // Handle error
  722. var code = error.code; // 错误编码
  723. var message = error.message; // 错误描述信息
  724. }
  725. </pre>
  726. <h2>参数:</h2>
  727. <ul><li>error:
  728. <em>(
  729. <font class="type">DOMException</font>
  730. )
  731. 必选 </em>回调参数,错误信息<br>
  732. 可通过error.code(Number类型)获取错误编码;
  733. 可通过error.message(String类型)获取错误描述信息。
  734. </li></ul>
  735. <h2>返回值:</h2>
  736. <font class="type">void</font>
  737. : 无<h1><a name="plus.io.IOCompleteCallback">IOCompleteCallback</a></h1>
  738. <p>操作完成回调函数</p>
  739. <pre class="prettyprint linenums">
  740. function void onComplete(event){
  741. }
  742. </pre>
  743. <h2>说明:</h2>
  744. <p class="des">
  745. 调用成功或失败都会触发此回调。
  746. </p>
  747. <h2>参数:</h2>
  748. <ul><li>event:
  749. <em>(
  750. <font class="type">json</font>
  751. )
  752. 可选 </em>回调参数<br>
  753. 调用成功时回调参数与IOSuccessCallback一致,调用失败时回调参数与IOFailCallback一致。
  754. </li></ul>
  755. <h2>返回值:</h2>
  756. <font class="type">void</font>
  757. : 无<br><br>
  758. </div></body>
  759. </html>