当前位置: 代码迷 >> J2ME >> 用j2me设计一个手机电子书阅览软件
  详细解决方案

用j2me设计一个手机电子书阅览软件

热度:2811   发布时间:2013-02-25 21:32:06.0
用j2me设计一个手机电子书阅读软件
    终于足球项目告一段落,期间学辛苦,无奈与成长都是可写的。
     在此期间我让UI折腾的紧,甚至曾经想放弃,终究是坚持下来了。想想在一个小小的屏幕上设计一个UI已经是很痛苦的已经事情,何况在pc上设计,真是佩服死了那些高手们。
     最近,时间比较有空,所以把UI修改了下,然后在此基础上+jsr75规范做了个电子书阅读软件。等我设计好了以后,打算开源,大家共同学习,虽然写的不好,各位高手多指教。现在发布一些读取手机目录的方法。
package org.pook.file;import java.io.IOException;import java.util.Enumeration;import java.util.Vector;import javax.microedition.io.Connector;import javax.microedition.io.file.FileConnection;import javax.microedition.io.file.FileSystemRegistry;import org.pook.log.Log;/** * <b>类名:BookFileImpl.java</b> </br>  * 编写日期: 2006-10-12 <br/> * 程序功能描述: <br/> * Demo: <br/> * Bug: <br/> *  * 程序变更日期 :<br/>  * 变更作者 :<br/>  * 变更说明 :<br/> *  * @author wuhua </br> <a href="mailto:rrq12345@163.com">rrq12345@163.com</a> */public class BookFileImpl implements BookFile {	private static Log log = Log.getLog("BookFileImpl");		FileConnection conn = null;		BookFileImpl(String url){		try {		    conn = (FileConnection) Connector.open( url, Connector.READ);		   		}catch( IOException e ){		    e.printStackTrace();		}		catch( SecurityException e ){		   e.printStackTrace();		}	}			public Vector listName() throws IOException {		 		Vector vc = null;		 if( conn.isDirectory() ){		        Enumeration names = conn.list();		        vc = new Vector();     		        while( names.hasMoreElements() ){		        	vc.addElement(names.nextElement());		            		        }		        return vc;		    } else {		        return null;		  }	}	public String read() throws IOException {	      return null;	}	public boolean isFile() {				if(conn.isDirectory())			return false;		else			return true;	}	public String getFilePath() {		checkConn();		return conn.getPath();	}	private void checkConn() {		if(conn == null)			throw new NullPointerException("文件资源不存在!");			}	public String getFileName() {		checkConn();		return conn.getName();	}	public void close() {		if(conn != null)			try {				conn.close();			} catch (IOException e) {				// TODO 自动生成 catch 块				e.printStackTrace();			}			} 


package org.pook.file;import java.util.Enumeration;import java.util.Vector;import javax.microedition.io.file.FileSystemRegistry;import org.pook.log.Log;/** * <b>类名:BookFileManager.java</b> </br> 编写日期: 2006-10-12 <br/> 程序功能描述: <br/> * Demo: <br/> Bug: <br/> *  * 程序变更日期 :<br/> 变更作者 :<br/> 变更说明 :<br/> *  * @author wuhua </br> <a href="mailto:rrq12345@163.com">rrq12345@163.com</a> */public class BookFileManager {	private static Log log = Log.getLog("BookFileManager");	public static boolean available() {		String version = System				.getProperty("microedition.io.file.FileConnection.version");		if (version != null) {			return true;		} else {			return false;		}	}	public static BookFile openBookFile(String url) {		return new BookFileImpl(url);	}			 	public static Vector listRoots() {	 		Vector vc = null;		Enumeration names = FileSystemRegistry.listRoots();		 		vc = new Vector();		while (names.hasMoreElements()) {					vc.addElement(names.nextElement());			//log.debug(names.nextElement());		}		 		return vc;	}}
1 楼 adamzhao 2006-10-19  
wuhua 写道
   
vc = new Vector();

while (names.hasMoreElements()) {
vc.addElement(names.nextElement());
//log.debug(names.nextElement());
}

return vc;



没有接触过j2me,Vector现在依然是主力Collection工具吗?
2 楼 wuhua 2006-10-19  
j2me提供的collection很少,大概就1两个。
而且功能弱,其中Vector是j2me的util库里面的一个类,功能还够用。
3 楼 wuhua 2006-10-20  
jsr75规范并非是强制性的。
所以有些手机支持的很好,有些则没。比如moto虽支持,但实际是不给访问的。
nokia则每次访问本地数据都会弹出确认窗口,除非是经过签名的应用程序。

根据规范描述,因为操作文件是件很费时的事,建议另建一个线程读取,这样可以保证,UI不会死锁。
4 楼 Wayne 2006-10-20  
兄弟是想拿FEEDBACK还是?不提供requirement,即使你给出所有的code也没意义。
5 楼 wuhua 2006-10-20  
Wayne 写道
兄弟是想拿FEEDBACK还是?不提供requirement,即使你给出所有的code也没意义。


兄弟我英文不太好,FEEDBACK, requirement意思我不明白
我只知道,我心情好的时候我会写开心的,不好的时候我会写不开心的。本来blog的功能就如此。散播心情。兄弟不喜好大可不看。
不管写的人用意是什么,看的人用意是什么,只管自己喜好。^_^
6 楼 rkihabara 2006-11-01  
非常棒,刚换手机的时候也想写一个,不过机器中没有中文字体支持,郁闷,后来,,后来就搁浅了~~

不知道lz知否如何安装新字体?:)
7 楼 wuhua 2006-11-01  
rkihabara 写道
非常棒,刚换手机的时候也想写一个,不过机器中没有中文字体支持,郁闷,后来,,后来就搁浅了~~

不知道lz知否如何安装新字体?:)

请查阅这篇文章
http://www.ccw.com.cn/mobile/qysp/htm2006/20060322_124SD_2.htm
8 楼 snowtree_ok 2007-09-03  
楼主太强了,也很勤劳,在好几个论坛上看到你的手套
9 楼 qiixiao 2007-09-12  
Log.java呢??
10 楼 马伟 2007-09-12  
读什么格式的,有书签嘛?