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

本文分享了一款基于JSR75规范开发的电子书阅读软件中关于手机文件读取的方法。作者详细介绍了如何使用Java进行手机文件系统的访问,包括获取根目录、列出文件夹内容等操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

终于足球项目告一段落,期间学辛苦,无奈与成长都是可写的。
在此期间我让UI折腾的紧,甚至曾经想放弃,终究是坚持下来了。想想在一个小小的屏幕上设计一个UI已经是很痛苦的已经事情,何况在pc上设计,真是佩服死了那些高手们。
最近,时间比较有空,所以把UI修改了下,然后在此基础上+jsr75规范做了个电子书阅读软件。等我设计好了以后,打算开源,大家共同学习,虽然写的不好,各位高手多指教。现在发布一些读取手机目录的方法。
[code]
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();
}

}

[/code]

[code]
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;

}

}
[/code]
资源下载链接为: https://pan.quark.cn/s/1bfadf00ae14 “STC单片机电压测量”是一个以STC系列单片机为基础的电压检测应用案例,它涵盖了硬件电路设计软件编程以及数据处理等核心知识点。STC单片机凭借其低功耗、高性价比和丰富的I/O接口,在电子工程领域得到了广泛应用。 STC是Specialized Technology Corporation的缩写,该公司的单片机基于8051内核,具备内部振荡器、高速运算能力、ISP(在系统编程)和IAP(在应用编程)功能,非常适合用于各种嵌入式控制系统。 在源代码方面,“浅雪”风格的代码通常简洁易懂,非常适合初学者学习。其中,“main.c”文件是程序的入口,包含了电压测量的核心逻辑;“STARTUP.A51”是启动代码,负责初始化单片机的硬件环境;“电压测量_uvopt.bak”和“电压测量_uvproj.bak”可能是Keil编译器的配置文件备份,用于设置编译选项和项目配置。 对于3S锂电池电压测量,3S锂电池由三节锂离子电池串联而成,标称电压为11.1V。测量时需要考虑电池的串联特性,通过分压电路将高电压转换为单片机可接受的范围,并实时监控,防止过充或过放,以确保电池的安全和寿命。 在电压测量电路设计中,“电压测量.lnp”文件可能包含电路布局信息,而“.hex”文件是编译后的机器码,用于烧录到单片机中。电路中通常会使用ADC(模拟数字转换器)将模拟电压信号转换为数字信号供单片机处理。 在软件编程方面,“StringData.h”文件可能包含程序中使用的字符串常量和数据结构定义。处理电压数据时,可能涉及浮点数运算,需要了解STC单片机对浮点数的支持情况,以及如何高效地存储和显示电压值。 用户界面方面,“电压测量.uvgui.kidd”可能是用户界面的配置文件,用于显示测量结果。在嵌入式系统中,用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值