J2me文件系统
几个问题
1,可选包的概念
什么是J2ME可选包?可选包其实就是一系列的API(Application Programming Interface)的集合,但是他们并不能定义整个应用程序的运行环境,而是对标准运行环境的扩展来支持特定设备的特定属性,他们必须和Configuration和Profile联合起来使用。
2,JSR75包括的两个API
FileConnection------允许 MIDlet 访问本地设备文件系统
PIM---------个人信息管理 (PIM) 可选包,用于操纵联系人列表(地址簿)、日历以及任务列表的 API(今天只讲FileConnection)
3,模拟器如何增加盘符
4,安全提示
在我们往手机存储设备上读写数据的时候会遇到很烦人的警告提示框,这些提示在为签名之前是没有办法去除的,它的权限不是在我们程序中能够获取到的,而是在手机生产商。
5,读写操作要使用单独的线程来操作
我们在开发中如果如果遇到针对文件系统的读写操作的话,为了防止线程阻塞,要开辟新的线程来执行对应的IO操作。参考比如断点下载模块中的操作。
如何使用
这里只是说一些我在实际的开发中遇到的问题,一般接口方法直接看API提供的接口就好了。
如何判断手机支持文件系统--------FileConnection
大众版(多数手机)
System.getProperty("microedition.io.file.FileConnection.version") != null
Moto大众版
System.getProperty("com.motorola.io.FileConnection.version") != null
Moto特殊版本
System.getProperty("com.motorola.io.file.FileConnection.version") != null
可见Moto很扯蛋,半路杀出个程咬金。
新建目录
在实际的开发中,新建目录是很常见的操作
FileConnection fs =(FileConnection) Connector.open("file:///"+" path);
if(fs!=null){
fs.mkdir();
}
注意:我们在新建自己的目录时候不能同时新建多个目录,只能新建一个目录。
在上面的代码中如果path=”dir1/dir2/”,如果没有dir1就直接执行是不能执行成功。
Open操作
open(String path);
open(String path,int mode);
这两个open语句是在我们执行一切文件系统操作首先要做的事情,第一句默认是可读可写操作权限,第二句就比较人性化,后面跟的什么参数是读/写模式。
别看这两个很简单的语句,要是你没有针对其操作做好相对应的逻辑操作,你的程序很可能在个别手机就会出现问题。例如,要你扫描手机本地所有的歌曲文件,当执行这条open操作的时候可能在不同的手机上面,执行的结果会有一定差异,这就得处理好你对这两个操作可能会引起的异常的处理。
CanWrite()、canRead()操作
这两个函数是用来判断我们所执行的文件或者文件夹是否可以进行写操作、读操作的
权限。
在文件时候基本没有什么可以说的,但是在针对文件夹时候,你就得注意了,也许canWrite()返回true了,你在其里面直接进行一些操作也是会有问题的,在我的实际开发中就遇到这样的问题:我在保存下载歌曲的时候提供了一个让用户选择保存的路径的时候,明明是首先判断了canWrite()了,在保存时候在该目录进行写操作的时候老报安全异常。
文件系统看似很简单,但是,由于硬件环境的巨大差异,在实际开发中总是会出现一些非常郁闷的问题,这里分享一下我自己的一些工作失败总结。如果你有更好的,希望路过了就一起分享,共同进步。
分享到:
相关推荐
j2me fileconnection api 本文档讲述了FileConnection API [JSR-075],并简要介绍了该包中包含的MIDlet范例以及诺基亚特有的一些实现细节。
PDA FileConnection (JSR 75) J2ME Web Services RPC (JSR 172) Scalable 2D Vector Graphics API (JSR-226) SIP API (JSR 180) Wireless Messaging API 1.0 (JSR 120) WTK2.2 相关文档 Nokia UI API ...
J2ME API 速查手册 本手册包含如下内容 ...PDA FileConnection (JSR 75) J2ME Web Services RPC (JSR 172) Scalable 2D Vector Graphics API (JSR-226) SIP API (JSR 180) Wireless Messaging API 1.0 (JSR 120)
FileConnection in J2ME
Vedio player in j2me. Also may need FileConnection API. @thour: prithwi
PDA FileConnection (JSR 75) J2ME Web Services RPC (JSR 172) Scalable 2D Vector Graphics API (JSR-226) SIP API (JSR 180) Wireless Messaging API 1.0 (JSR 120) WTK2.2 相关文档 Nokia UI API 1.1
PDA FileConnection (JSR 75) J2ME Web Services RPC (JSR 172) Scalable 2D Vector Graphics API (JSR-226) SIP API (JSR 180) Wireless Messaging API 1.0 (JSR 120) WTK2.2 Ïà¹ØÎĵµ Nokia UI API ...
PDA FileConnection (JSR 75) J2ME Web Services RPC (JSR 172) Scalable 2D Vector Graphics API (JSR-226) SIP API (JSR 180) Wireless Messaging API 1.0 (JSR 120) WTK2.2 相关文档 Nokia UI API 1.1
2.通过j2me的FileConnection 完成通讯录的保存工作 FileConnection fc; try { String elem = null; Enumeration e = FileSystemRegistry.listRoots(); while (e.hasMoreElements()) { elem = e.nextElement()...
J2ME文件系统的运用,分三部分讲解,含有代码及文件系统的原理,适合初学者使用。
手机系统目录管理,查看手机上的文件目录结构。java j2me
这个jar包是关于j2me中文件的操作的。
在程序中用fileConnection对手机本地文件进行操作。主要操作的是TXT文件和Image文件。在s60第5版操作平台上通行无障碍。
PDA FileConnection (JSR 75) J2ME Web Services RPC (JSR 172) Scalable 2D Vector Graphics API (JSR-226) SIP API (JSR 180) Wireless Messaging API 1.0 (JSR 120) WTK2.2 相关文档 Nokia UI API 1.1
J2ME Java 应用程序(midlet),用于在支持可选 FileConnection 和 PIM API (JSR 75) 的手机上使用 vCard/vCalendar 标准备份和恢复/导入/导入文本文件中的联系人、日历事件和 TODO。
1.读取XML格式的数据文件 2.增加读取和保存进度功能