- 浏览: 235584 次
- 性别:
- 来自: 济南
文章分类
最新评论
-
lliiqiang:
打开多个页面就没有办法同时提交了。
jsp 表单防止重复提交(简单版) -
mponeno:
check,只是判断空的,应该没什么所谓,用StringUti ...
java判断文件是否为图片 已图片后缀名为依据 -
puqingluochen:
源码能打包发给我吗,谢谢了。
Extjs Grid 编辑 新增 删除 保存 (爽) -
java麦克斯泰:
getJSONString()
这个方法都没调用 不是完整 ...
extjs tree异步加载 完整版 -
yehoubin:
你好,我的虚拟机上的是Mac OS X leopard的,可以 ...
iPad 和 iPhone Simulator Mac.OS.X.Leopard
package com.wanchong;
/**
* 作者:万冲
* QQ:569845790
* Mail:wanchong998@qq.com
*/
import javax.microedition.lcdui.Display;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
public class DMIDlet extends MIDlet{
protected void destroyApp(boolean arg0) throws MIDletStateChangeException {
// TODO Auto-generated method stub
}
protected void pauseApp() {
// TODO Auto-generated method stub
}
protected void startApp() throws MIDletStateChangeException {
// TODO Auto-generated method stub
Display.getDisplay(this).setCurrent(new DCanvas());
}
}
package com.wanchong;
/**
* 作者:万冲
* QQ:569845790
* Mail:wanchong998@qq.com
*/
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Enumeration;
import java.util.Vector;
import javax.microedition.io.Connector;
import javax.microedition.io.HttpConnection;
import javax.microedition.io.file.FileConnection;
import javax.microedition.io.file.FileSystemRegistry;
import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
public class DCanvas extends Canvas implements Runnable{
Image image;
public DCanvas()
{
setFullScreenMode(true);
repaint();
//启动下载线程
new Thread(this).start();
}
String downFilecon=null;
protected void paint(Graphics g) {
// TODO Auto-generated method stub
g.setColor(0x0);
g.fillRect(0, 0, getWidth(), getHeight());
g.setColor(0xff0000);
g.drawString("正在下载中....", 0, 0, 0);
if(downFilecon!=null){
g.setColor(0xff0000);
g.drawString(downFilecon, 50, 50, 0);
}
}
public void run() {
// TODO Auto-generated method stub
try {
connect();
} catch (Exception e) {
e.printStackTrace();
}
}
String url = "http://www.xxx.com/wandown/wan_down_test.jar";
public void connect() throws Exception
{
HttpConnection http = null;
InputStream is = null;
OutputStream os = null;
byte[] data = null;
try
{
http = getHttpConnection(url);
int code = http.getResponseCode();
// 返回200 表示连接成功
if (code == HttpConnection.HTTP_OK)
{
is = http.openInputStream();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
int ch = -1;
while ((ch = is.read()) != -1) {
baos.write(ch);
//System.out.println(ch);
}
data = baos.toByteArray();
}
else
{
System.out.println("网络连接错误");
}
//下载图片数据完成后创建图片
if(data != null)
{
// image = Image.createImage(data, 0, data.length);
//repaint();//重绘
int t = this.saveFile("file://localhosst/root1/wanchong.jar",data, true);
downFilecon = "下载完成!";
}
}
finally
{
if(os != null)
{
os.close();
os = null;
}
if(is != null)
{
is.close();
is = null;
}
if(http != null)
{
http.close();
http = null;
}
}
}
/**
* 取得一个URL的连接
* @param url
* @return
* @throws Exception
*/
private HttpConnection getHttpConnection(String url) throws Exception
{
HttpConnection http = (HttpConnection) Connector.open(url);
http.setRequestProperty("Content-Type", "application/octet-stream");//get
http.setRequestMethod(HttpConnection.GET);
return http;
}
/**
* 保存文件
* @param path 文件路径
* @param fileData 文件数据
* @param overrite 是否要强制覆盖
* @return 1:成功写入文件 -1:文件已经存在没有重写 0:写入文件时出错
*
*/
public int saveFile(String path, byte[] fileData, boolean overrite) {
try {
FileConnection fc = (FileConnection) (Connector.open(path));
if (fc.exists()) {
if (overrite) {
fc.delete(); //如果文件已经存在,先删除
fc.create();
fc.setWritable(true);
OutputStream os = fc.openOutputStream();
os.write(fileData,0,fileData.length);
os.close();
return 1;
} else
return -1;
} else {
fc.create();
fc.setWritable(true);
OutputStream os = fc.openOutputStream();
os.write(fileData,0,fileData.length);
os.close();
return 1;
}
} catch (Exception e) {
System.out.println("saveFileErr:" + e.getMessage());
e.printStackTrace();
return 0;
}
}
/**
* 获取路径
* @return
*/
public String[] DeviceGetRoots() {
Enumeration enumRoot = FileSystemRegistry.listRoots();// 返回根目录组成的序列
Vector list = new Vector();
while (enumRoot.hasMoreElements()) {
list.addElement(enumRoot.nextElement());
}
String[] ret = null;
if (list.size() > 0) {
ret = new String[list.size()];
for (int i = 0; i < list.size(); i++) {
ret[i] = (String) list.elementAt(i);
}
}
return ret;
}
}
/**
* 作者:万冲
* QQ:569845790
* Mail:wanchong998@qq.com
*/
import javax.microedition.lcdui.Display;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
public class DMIDlet extends MIDlet{
protected void destroyApp(boolean arg0) throws MIDletStateChangeException {
// TODO Auto-generated method stub
}
protected void pauseApp() {
// TODO Auto-generated method stub
}
protected void startApp() throws MIDletStateChangeException {
// TODO Auto-generated method stub
Display.getDisplay(this).setCurrent(new DCanvas());
}
}
package com.wanchong;
/**
* 作者:万冲
* QQ:569845790
* Mail:wanchong998@qq.com
*/
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Enumeration;
import java.util.Vector;
import javax.microedition.io.Connector;
import javax.microedition.io.HttpConnection;
import javax.microedition.io.file.FileConnection;
import javax.microedition.io.file.FileSystemRegistry;
import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
public class DCanvas extends Canvas implements Runnable{
Image image;
public DCanvas()
{
setFullScreenMode(true);
repaint();
//启动下载线程
new Thread(this).start();
}
String downFilecon=null;
protected void paint(Graphics g) {
// TODO Auto-generated method stub
g.setColor(0x0);
g.fillRect(0, 0, getWidth(), getHeight());
g.setColor(0xff0000);
g.drawString("正在下载中....", 0, 0, 0);
if(downFilecon!=null){
g.setColor(0xff0000);
g.drawString(downFilecon, 50, 50, 0);
}
}
public void run() {
// TODO Auto-generated method stub
try {
connect();
} catch (Exception e) {
e.printStackTrace();
}
}
String url = "http://www.xxx.com/wandown/wan_down_test.jar";
public void connect() throws Exception
{
HttpConnection http = null;
InputStream is = null;
OutputStream os = null;
byte[] data = null;
try
{
http = getHttpConnection(url);
int code = http.getResponseCode();
// 返回200 表示连接成功
if (code == HttpConnection.HTTP_OK)
{
is = http.openInputStream();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
int ch = -1;
while ((ch = is.read()) != -1) {
baos.write(ch);
//System.out.println(ch);
}
data = baos.toByteArray();
}
else
{
System.out.println("网络连接错误");
}
//下载图片数据完成后创建图片
if(data != null)
{
// image = Image.createImage(data, 0, data.length);
//repaint();//重绘
int t = this.saveFile("file://localhosst/root1/wanchong.jar",data, true);
downFilecon = "下载完成!";
}
}
finally
{
if(os != null)
{
os.close();
os = null;
}
if(is != null)
{
is.close();
is = null;
}
if(http != null)
{
http.close();
http = null;
}
}
}
/**
* 取得一个URL的连接
* @param url
* @return
* @throws Exception
*/
private HttpConnection getHttpConnection(String url) throws Exception
{
HttpConnection http = (HttpConnection) Connector.open(url);
http.setRequestProperty("Content-Type", "application/octet-stream");//get
http.setRequestMethod(HttpConnection.GET);
return http;
}
/**
* 保存文件
* @param path 文件路径
* @param fileData 文件数据
* @param overrite 是否要强制覆盖
* @return 1:成功写入文件 -1:文件已经存在没有重写 0:写入文件时出错
*
*/
public int saveFile(String path, byte[] fileData, boolean overrite) {
try {
FileConnection fc = (FileConnection) (Connector.open(path));
if (fc.exists()) {
if (overrite) {
fc.delete(); //如果文件已经存在,先删除
fc.create();
fc.setWritable(true);
OutputStream os = fc.openOutputStream();
os.write(fileData,0,fileData.length);
os.close();
return 1;
} else
return -1;
} else {
fc.create();
fc.setWritable(true);
OutputStream os = fc.openOutputStream();
os.write(fileData,0,fileData.length);
os.close();
return 1;
}
} catch (Exception e) {
System.out.println("saveFileErr:" + e.getMessage());
e.printStackTrace();
return 0;
}
}
/**
* 获取路径
* @return
*/
public String[] DeviceGetRoots() {
Enumeration enumRoot = FileSystemRegistry.listRoots();// 返回根目录组成的序列
Vector list = new Vector();
while (enumRoot.hasMoreElements()) {
list.addElement(enumRoot.nextElement());
}
String[] ret = null;
if (list.size() > 0) {
ret = new String[list.size()];
for (int i = 0; i < list.size(); i++) {
ret[i] = (String) list.elementAt(i);
}
}
return ret;
}
}
发表评论
-
点阵字库在J2ME中的实现
2010-02-05 14:05 1169点阵字库在J2ME中的实现 关于点阵字库在J ... -
J2ME移植到ophone
2009-11-12 09:10 1042中国拥有世界最庞大的电信客户群,仅移动用户就达7亿,3G在中国 ... -
手机编程关于socket实例代码
2009-11-13 23:39 1195最近有很多网友也许是刚刚接触socket 这个套接字 协议通讯 ... -
KXML:J2ME中的XML语法分析利器
2009-11-19 15:19 1457Enhydra的KXML是一个只占 ... -
用J2ME实现简单电子邮件发送功能
2009-11-21 12:56 1038在GCF中并没有提供给我们能够发送电子邮件的API,J2ME的 ... -
J2ME 下的 Base64的编码与解码
2009-11-23 12:05 1253以前以为用J2EE里面的rt.jar 就能成功的引入到j2me ... -
五十音图
2009-11-27 11:34 1384日语的每个假名代表一 ... -
J2me蓝牙打印开发
2009-12-19 21:49 1765Java代码 Stringurl=ser ... -
WM 注册表 常用设置
2010-01-21 17:36 35701、注册表内容 大致上可以分为四组 HKEY_CLASSES_ ... -
iPad 和 iPhone Simulator Mac.OS.X.Leopard
2010-01-29 17:13 14483这两天玩了玩 XP 系统 通过vmware 装个 Mac. ... -
J2ME开发模拟器KEmulator简介及使用
2010-01-17 16:23 3822j2me开发中少不了每天跟 ... -
J2ME 使用的字体 Font 类
2009-12-23 10:01 1296在J2ME手机编程中使用字体 在J2ME手机编程中,可以 ... -
J2ME 发短信 实例
2009-12-21 20:17 1954package com.wanchong.duanxin; ... -
j2me中的文件操作包JSR75入门讲解
2009-12-13 15:38 2172JSR 75(PDA Optional Packages fo ... -
J2ME 文件操作
2009-12-13 12:04 1706package com.dw.contactadapter.b ... -
J2ME 图片下载实例 简洁明了
2009-12-13 11:43 1356package com.wanchong; /** * 作者 ... -
J2ME文件上传实例(FileConnector链接文件系统,非RMS)
2009-12-13 11:36 1392客户端: import java.io.InputStre ... -
汉诺塔程序的j2me实现(触摸屏)
2009-09-05 01:01 1404汉诺塔程序的j2me实现(触摸屏) import javax ... -
手机触摸屏程序开发
2009-08-09 17:32 1879使用J2ME技术实现手机触摸屏开发的方法: 首先的修改调试 ... -
Socket模拟Http协议
2009-05-20 14:55 1513接收数据方法: /**/ /// <summ ...
相关推荐
读者可以通过解压文件中的“J2ME程序设计实例教程”来获取这些示例代码。 **总结** 《J2ME程序设计实例教程》通过实例教学的方式,全面讲解了J2ME应用开发的各个方面,包括环境配置、MIDlet开发、用户界面设计、...
在本文中,我们将深入探讨如何利用J2ME进行游戏开发,以华容道游戏为例,展示从项目规划到最终实现的全过程。 首先,开发者在决定使用J2ME进行游戏开发时,通常是基于其广泛的应用场景和便捷的开发环境。J2ME由配置...
在开发J2ME应用时,我们需要编写配置文件如`midlet.jad`和`midlet.jar`,它们分别用于描述应用程序的元数据和包含编译后的代码。 2. **开发环境与工具** 常用的J2ME开发工具有NetBeans、Eclipse和JCreator等,它们...
它与`.jar`文件一起构成J2ME应用的部署单元。`BloglinesMobile.jad`可能是其中一个应用实例,用于实现类似于博客阅读器的功能。 4. **资源管理** `res`目录通常包含应用的资源文件,如图片、音频、布局文件等。在...
Java 2 Micro Edition(J2ME)是一种针对嵌入式设备和移动设备的Java平台,它主要用于开发在手机、...通过对各种游戏实例的剖析,开发者能够掌握J2ME平台的特性和最佳实践,为构建富有吸引力的移动游戏奠定坚实基础。
对应的`.jar`文件(可能命名为`Prj12_1.jar`,未在列表中给出)包含了编译后的类文件和资源。 7. **EclipseME插件**: `.eclipseme`和`.eclipseme.tmp`文件可能是EclipseME插件的临时或配置文件,该插件是Eclipse中...
完成游戏开发后,需要打包成JAR文件,并可能需要创建一个jad文件,包含应用描述和配置信息。然后可以通过各种渠道分发,如应用商店、网站或短信下载。 通过学习和研究这些SUN公司的J2ME游戏实例,初级开发者不仅能...
**J2ME程序设计实例教程源码详解** Java 2 Micro Edition(J2ME)是Java平台的一个子集,主要用于嵌入式系统和移动设备,如手机、智能家电等。本教程源码提供了深入理解J2ME编程的实际案例,帮助开发者掌握在小型...
源码编译为.class文件后,需要打包成JAR,再生成JAD文件,才能在目标设备上运行。 9. **模拟器测试**:由于实际设备的多样性,开发者通常会使用MIDP模拟器来测试应用程序,模拟器能够模拟不同配置和profile的设备,...
通过深入研究这些J2ME实例,开发者可以掌握移动开发的基本技巧,理解如何利用J2ME的特性来创建高效、用户友好的应用程序。同时,这些实例也提供了实践和调试J2ME代码的机会,有助于提升开发者的技能和经验。
完成游戏后,需要将其打包为JAR文件,并创建对应的JAD文件,以便在不同手机上安装和运行。 通过这个实例,你可以学习到如何用J2ME开发简单的手机游戏,掌握游戏开发的基本流程和技巧。同时,这也是理解和实践面向...
标题中的“J2ME开发实例6.rar_SocketTest.jar_httptest.j”表明这是一个关于Java 2 Micro Edition(J2ME)的开发实例,主要涉及网络通信方面的代码,具体是Socket编程和HTTP测试。J2ME是Java平台的一个子集,主要...
完成开发后,需要将应用打包成JAR和JAD文件,通过无线下载或USB连接等方式部署到目标设备上。了解不同设备的兼容性和签名过程也是必要的。 总的来说,"J2ME全实例教程"是一个全面的学习资源,不仅讲解了J2ME的基础...
**J2ME实例问题讲解** J2ME,全称Java 2 Micro Edition,是Java平台的一个子集,专为资源有限的嵌入式设备和移动设备设计。它提供了开发和部署移动应用程序的框架,适用于手机、智能手表、电视等设备。在实际开发...
提供的压缩包文件包含了名为"Java Me 嵌入式程序设计"的系列课件,分别对应章节1到4和8,这些课件可能涵盖了J2ME的基础概念、MIDP API的使用、网络编程实例以及可能的项目实践等内容。通过学习这些课件,你可以深入...
4. **运行包**: 压缩包中包含的运行包通常是JAR文件,它是Java的归档文件格式,可以包含编译后的类文件和其他资源。这个JAR文件可以直接在支持J2ME的设备上运行,无需额外编译。 5. **codefans.net**: 这可能是提供...
9. **打包与部署**:了解如何将应用打包成JAR文件,以及如何将其安装到实际设备或模拟器上进行测试。 通过分析这些实例源码,开发者不仅可以学习到J2ME编程的基本语法,还能理解如何在Eclipse环境中高效地开发、...
lib目录: J2ME程序库,Jar包与控制文件 session目录:性能监控保存信息 wtklib目录: JWTK主程序与模拟器外观 WTK是用来开发MIDP的,为了让MIDlet可以顺利编译和执行,WTK必须具有CLDC和MIDP的类库,WTK...