`
zj360202
  • 浏览: 29835 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

j2me中对时间处理的方法 TextFieldWithItemStateListenerMIDlet.java

    博客分类:
  • j2me
阅读更多
import java.util.Calendar;
import java.util.Date;
import java.util.TimeZone;

import javax.microedition.global.Formatter;
import javax.microedition.lcdui.DateField;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.Item;
import javax.microedition.lcdui.ItemStateListener;
import javax.microedition.lcdui.TextField;
import javax.microedition.midlet.MIDlet;


public class TextFieldWithItemStateListenerMIDlet extends MIDlet implements ItemStateListener {

private Display display;

private TextField name;
private TextField tel;
private TextField summary;
private DateField date;
private DateField datetime;
private DateField time;
private TextField datedisplay;

public TextFieldWithItemStateListenerMIDlet(){
display = Display.getDisplay(this);
}

protected void destroyApp(boolean arg0) {
}

protected void pauseApp() {
}

protected void startApp() {
Form f = new Form("TextField测试");
name = new TextField("姓名","",8,TextField.ANY);
tel = new TextField("电话","",14,TextField.PHONENUMBER);
summary = new TextField("总结","",30,TextField.UNEDITABLE);
date = new DateField("日期",DateField.DATE,TimeZone.getTimeZone("GMT+8:00"));
datetime = new DateField("日期时间",DateField.DATE_TIME,TimeZone.getTimeZone("GMT+8:00"));
time = new DateField("时间",DateField.TIME,TimeZone.getTimeZone("GMT+8:00"));
datedisplay = new TextField("时间","",50,TextField.UNEDITABLE);

System.out.println(datetime.getDate());

f.append(name);
f.append(tel);
f.append(summary);
f.append(date);
f.append(datetime);
f.append(time);
f.append(datedisplay);
f.setItemStateListener(this);
display.setCurrent(f);
}

public void itemStateChanged(Item item) {
summary.setString("");
datedisplay.setString("");
if(item == name){
summary.setString("输入的姓名为:"+name.getString());
}else if(item == tel){
summary.setString("输入的电话为:"+tel.getString());
}else if(item == date){
Calendar cal = Calendar.getInstance();
cal.setTime(date.getDate());
datedisplay.setString(new Formatter().formatDateTime(cal, Formatter.DATE_SHORT));
}else if(item == datetime){
Date dt = datetime.getDate();

long t = dt.getTime();

long shicha = 8*60*60*1000;

dt.setTime(dt.getTime()+shicha);

Calendar cal = Calendar.getInstance();
cal.setTime(dt);

Calendar da = Calendar.getInstance();

Date d = new Date();

d.setTime(d.getTime()+shicha);

da.setTime(d);

long dat = d.getTime();
System.out.println(t-dat);
System.out.println(TextFieldWithItemStateListenerMIDlet.getSystemDateTime(dt));
System.out.println(new Formatter().formatDateTime(da, Formatter.DATETIME_SHORT));

datedisplay.setString(new Formatter().formatDateTime(da, Formatter.DATETIME_SHORT));
}else if(item == time){
Calendar cal = Calendar.getInstance();
cal.setTime(time.getDate());
datedisplay.setString(new Formatter().formatDateTime(cal, Formatter.TIME_SHORT));
}
}

private static String getSystemDateTime(Date d){
        Calendar  ca  =Calendar.getInstance(TimeZone.getTimeZone("GMT+8:00"));
        ca.setTime(d);
        int year = ca.get(Calendar.YEAR);
        int month = ca.get(Calendar.MONTH)+1;
        int date = ca.get(Calendar.DATE);
        int hour = ca.get(Calendar.HOUR_OF_DAY);
        int minute = ca.get(Calendar.MINUTE);
        int second = ca.get(Calendar.SECOND);
        String yearStr = String.valueOf(year);
        String monthStr = String.valueOf(month);
        String dateStr = String.valueOf(date);
        String hourStr = String.valueOf(hour);
        String minuteStr = String.valueOf(minute);
        String secondStr = String.valueOf(second);
        if(month<10){
            monthStr="0"+monthStr;
        }
        if(date<10){
            dateStr="0"+dateStr;
        }
        if(hour+8<10){
            hourStr="0"+hourStr;
        }
      if(minute<10){
          minuteStr="0"+minuteStr;
      }
      if(second<10){
          secondStr="0"+secondStr;
      }

      return yearStr+"-"+monthStr+"-"+dateStr+" "+hourStr+":"+minuteStr+":"+secondStr;
    }

public static void main(String[] args){
System.out.println(getSystemDateTime(new Date()));
}

}
分享到:
评论

相关推荐

    [J2ME编程].(Manning).J2ME.-.Java.in.small.things.(2002)

    对于想学习J2ME的开发者,"[J2ME编程].(Manning).J2ME.-.Java.in.small.things.(2002)"这本书是一个很好的起点,它详细介绍了J2ME的基础知识、开发技巧和实际案例,帮助读者掌握J2ME编程技能。 总结,J2ME是Java在...

    [j2me开发学习资料].j2me.rar[j2me开发学习资料].j2me.rar

    [j2me开发学习资料].j2me.rar[j2me开发学习资料].j2me.rar [j2me开发学习资料].j2me.rar[j2me开发学习资料].j2me.rar[j2me开发学习资料].j2me.rar

    funambol-j2me-api-6.5.1000.zip_PIM_phone_pim java

    对于Java Micro Edition(J2ME)平台,开发者可以利用特定的API来实现PIM数据的处理。"funambol-j2me-api-6.5.1000.zip"是一个专门针对这一需求的库,旨在帮助开发者在J2ME环境中有效地管理和同步手机上的PIM数据。 ...

    j2me指南[版主cleverpig推荐].rar

    j2me指南[版主cleverpig推荐].rar j2me指南[版主cleverpig推荐].rar j2me指南[版主cleverpig推荐].rar j2me指南[版主cleverpig推荐].rar j2me指南[版主cleverpig推荐].rar

    J2ME中的时间处理方法

    本文将深入探讨J2ME中处理时间的方法,帮助开发者理解如何有效地利用这些技术来优化应用程序。 J2ME中的时间处理主要依赖于`System.currentTimeMillis()`函数,它返回自1970年1月1日00:00:00 GMT以来的毫秒数。这个...

    archive_j2me游戏俄罗斯方块源码.zip.zip

    【标题】"archive_j2me游戏俄罗斯方块源码.zip.zip" 暗示着这是一个包含J2ME(Java 2 Micro Edition)平台上的俄罗斯方块游戏的源代码压缩包。J2ME是Java的一个子集,专为移动设备和嵌入式系统设计,如早期的手机和...

    J2ME模拟器 KEmulator Lite V0.9.8 免安装.zip

    本文将详细介绍J2ME模拟器KEmulator Lite V0.9.8及其在个人计算机(PC)上的使用方法,以及与Java游戏运行的相关知识。 **一、J2ME模拟器概述** J2ME(Java 2 Micro Edition)是Java平台的一个子集,主要用于移动...

    J2ME手机游戏坦克大战Java源码.rar

    通常,一个完整的源码包会包含多个文件和文件夹,比如.java源文件、资源文件(如图片、音频)、配置文件等。在这个案例中,具体的源码结构和内容需要解压文件才能查看。 **详细知识点** 1. **J2ME平台**:J2ME包含...

    j2me-step-by-step.rar_java programming

    **Java 2 Micro Edition (J2ME) 编程指南** **一、J2ME简介** Java 2 Micro Edition(J2ME)是Java技术的一个重要分支,主要用于嵌入式设备和移动设备的开发,如手机、智能家电、PDA等。J2ME提供了在这些资源受限的...

    J2ME 2D小游戏入门之旅.rar_j2me_j2me小游戏_java 2d_小游戏_小游戏 java

    Java Micro Edition(J2ME)是Java平台的一个子集,主要设计用于嵌入式设备和移动设备,如手机和智能手表。在这个“J2ME 2D小游戏入门之旅”资料中,你将深入学习如何使用J2ME开发2D游戏。J2ME以其轻量级和跨平台的...

    archive_J2me手机游戏飞机射击完整源码.zip.zip

    【标题】:“archive_J2me手机游戏飞机射击完整源码.zip.zip” 提供的是一个基于J2ME(Java 2 Micro Edition)平台的手机游戏源码,具体为一款飞机射击游戏。J2ME是Java技术在移动设备上的应用版本,主要用于开发...

    [OpenGL编程指南(第四版)].(Ebook.-.Pdf.-.Java).O&#39;Reilly.-.j2Me.In.A.Nutshell.pdf

    从给定的文件信息来看,这是一本名为《OpenGL编程指南(第四版)》的书籍描述,但实际上,文件内容提及的是《J2ME in a Nutshell》这本书,由Kim Topley编写,出版社为O'Reilly,出版时间为2002年3月,ISBN号为0-596...

    【Java项目开源源码】贪吃蛇游戏(源代码+基于J2ME的手机游戏开发定稿).zip

    以J2ME为开发平台,利用Java提供强大工具,不但可以在手机上实现静态HTML技术所无法实现的计算处理、数据存储、与服务器的通信等功能,而且能够开发各种手机游戏。本文在介绍J2ME及其体系结构的基础上,以贪吃蛇游戏...

    j2me jar包,j2me插件eclipseme.feature1.7.9site

    标题中的“j2me jar包,j2me插件eclipseme.feature1.7.9site”揭示了这个压缩包内容主要与Java 2 Micro Edition (J2ME)相关,特别是涉及EclipseME插件的1.7.9版本。J2ME是一种Java平台,用于开发和部署在移动设备、...

    在J2ME程序中制作Splash画面效果.zip

    在Java 2 Micro Edition (J2ME) 开发环境中,创建一个Splash屏幕是提升应用用户体验的重要方式之一。Splash屏幕通常是一个应用程序启动时显示的短暂画面,展示品牌标识或者加载进度,给用户带来专业和流畅的感觉。...

    J2ME开发精解随书实例源码.rar

    J2ME,全称Java 2 Micro Edition,是Java平台的一个子集,专门用于嵌入式设备和移动设备的开发,比如手机、智能家电等。它提供了基础的类库和虚拟机,使得开发者能够创建在有限资源设备上运行的应用程序。本压缩包...

    编写Palm J2ME红外线“聊天”程序.doc

    编写Palm J2ME红外线“聊天”程序.doc 编写Palm J2ME红外线“聊天”程序.doc

    Java J2ME手机版坦克大战源代码.rar

    Java J2ME(Java Micro Edition)是Java平台的一个子集,专为移动设备、嵌入式设备等资源有限的环境设计。本项目“Java J2ME手机版坦克大战源代码”提供了一个经典游戏“坦克大战”的实现,对于想要学习Java手机游戏...

    J2ME中文教程(From IBM) .rar

    在J2ME中,KJava是早期的开发环境,它允许在支持J2ME的手机上运行Java应用。WAP(Wireless Application Protocol)是一种通信协议,用于向移动设备提供互联网服务,早期的J2ME应用常常通过WAP进行分发和访问。 **...

    J2ME-simple-tutorial-programming.rar_j2me racing_java programmin

    5. **用户输入处理**:J2ME支持键盘和触摸屏输入。你需要监听按键事件,根据用户操作调整赛车的行驶方向和速度。 6. **游戏逻辑**:包括赛车的加速、刹车、转弯、碰撞后的反应等。这些逻辑需要封装在游戏对象中,并...

Global site tag (gtag.js) - Google Analytics