13. december 2002 - 13:41Der er
9 kommentarer og 1 løsning
Calender + Date i J2me
Hvordan kan man i j2me skabe en string bestående af time/minut/dag/måned/år - dvs. hente det aktuelle tidspunkt fra PC'en. Jeg har prøvet med Date.getTime, men det giver blot et antal millisekunder. Jeg kan desuden se, at j2me ikke indeholder gregoriancalender eller simpledate.
private String Dato(){ dato = new Date(); Calendar cal=Calendar.getInstance(); cal.setTime(dato); //når denne linie udkommenteres skriver den også nedenstående fejldato.
int dag=cal.get(Calendar.DATE); int maaned=cal.get(Calendar.MONTH); int aar=cal.get(Calendar.YEAR); int minut=cal.get(Calendar.MINUTE); int time=cal.get(Calendar.HOUR);
datoString = new String("/"+time+"/"+minut+"/"+dag+"/"+maaned+"/"+aar); return datoString;
compileren viser følgende dato-output: 12/0/1/0/2000
Hvorfor viser den det? Vi vil jo gerne have den tid der står på computeren...
Dette eksempel her som er bygget på dit eksempel virker præcis som forventet den udskriver klokkeslet og dags dato: /* * DatoTest.java * * Created on 16. december 2002, 12:36 */ import java.util.*; /** * * @author Disky * @version */ public class DatoTest { private String dato() { Date dato = new Date(); Calendar cal=Calendar.getInstance(); cal.setTime(dato); //når denne linie udkommenteres skriver den også nedenstående fejldato.
int dag=cal.get(Calendar.DAY_OF_MONTH); int maaned=cal.get(Calendar.MONTH)+1; int aar=cal.get(Calendar.YEAR); int minut=cal.get(Calendar.MINUTE); int time=cal.get(Calendar.HOUR_OF_DAY);
String datoString = new String("/"+time+"/"+minut+"/"+dag+"/"+maaned+"/"+aar); return datoString; } /** Creates new DatoTest */ public DatoTest() { String dagsDato=dato(); System.out.println("Dags dato = "+dagsDato); }
/** * @param args the command line arguments */ public static void main(String args[]) { new DatoTest(); }
Fordi den skal køre i et minut for at minutterne skifter :)
Prøv dette eksempel der har sekunder med, den leger ud i 100 sekunder: /* * DatoTest.java * * Created on 16. december 2002, 12:36 */ import java.util.*; /** * * @author thygesen * @version */ public class DatoTest { private String dato() { Date dato = new Date(); Calendar cal=Calendar.getInstance(); cal.setTime(dato); //når denne linie udkommenteres skriver den også nedenstående fejldato.
int dag=cal.get(Calendar.DAY_OF_MONTH); int maaned=cal.get(Calendar.MONTH); int aar=cal.get(Calendar.YEAR); int minut=cal.get(Calendar.MINUTE); int time=cal.get(Calendar.HOUR_OF_DAY); int sekund=cal.get(Calendar.SECOND);
String datoString = new String("/"+time+"/"+minut+"/"+sekund+"/"+dag+"/"+maaned+"/"+aar); return datoString; } /** Creates new DatoTest */ public DatoTest() throws InterruptedException { for(int x=0;x<100;x++) { System.out.println("Dags dato = "+dato()); java.lang.Thread.sleep(1000); } }
/** * @param args the command line arguments */ public static void main(String args[]) throws InterruptedException { new DatoTest(); }
}
p.s. Dette er jo ikke en midlet, men jeg gider ikke skulle uploade til min telefon for at teste, princippet er det samme.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.