2009-03-20 4 views
1

J'ai besoin d'obtenir les données d'un calendrier de datfield et être capable de l'afficher dans une chaîne et de le stocker plus tard dans un magasin de disques. J'ai essayé la méthode toString() mais j'ai eu une erreur une fois exécuté.Est-ce que quelqu'un sait comment convertir un champ date en une chaîne en java j2me?

 StartDate = new DateField("Start Date ", DateField.DATE); 
     StartDate.setDate(Calendar.getInstance().getTime()); 

J'ai maintenant ce code

 public static String dateToString (long date) 
    { 

    Calendar c = Calendar.getInstance() ; 

    c.setTime(new Date(date)); 
    int y = c.get(Calendar.YEAR); 
    int m = c.get(Calendar.MONTH) + 1; 
    int d = c.get(Calendar.DATE); 
    String t = (y<10? "0": "")+y+"-"+(m<10? "0": "")+m+"-"+(d<10? 
    "0": "")+d; 
    return t; 
     } 

Comment puis-je changer cela pour que cela pour obtenir la date de Startdate et de faire ce que t.?

Si quelqu'un pouvait vous aider!

+0

ce qui était l'erreur lors de l'exécution toString()? Le – Tobias

+0

est venu sur l'émissaire en disant [email protected] – user80378

Répondre

0

Il existe quelques sample implementations qui peuvent vous aider à démarrer, car il semble que votre exécution ne fournisse pas une implémentation utile de toString.

0

Est-ce que this résout votre problème?

... 
    date = new Date(); 
    currentDate = new DateField("", DateField.DATE_TIME); 
    currentDate.setDate(date); 
    dateinstring = date.toString(); 
    System.out.println("Date And Time Is In String Format: "+dateinstring); 
... 
0

Essayez d'utiliser quelque chose comme ça

 

... 
    Calendar c = Calendar.getInstance() ; 

    c.setTime(new Date(date)); 
    int y = c.get(Calendar.YEAR); 
    int m = c.get(Calendar.MONTH) + 1; 
    int d = c.get(Calendar.DATE); 

    Date t = c.getTime(); 
    String str = t.format("YY-MM-dd"); 
... 
 
0

D'abord, vous devez changer le type de paramètre de DateVersChaîne à ce jour: public static String DateVersChaîne (date de date)

Puis, après StartDate.setDate (Calendar.getInstance(). GetTime(); ajoutez cette ligne: Chaîne dateString = dateToString (StartDate.getDate());

Eh bien, au moins cela fonctionne dans mon MIDlet. Espérons que cela aide.

Cordialement,

Wahyu un

0

vous voudrez peut-être utiliser:

Chaîne GetDateFormat publique (Date de Indate) {

String stDate = null; 
String dd = null; 
String mm = null; 
String yyyy = null; 
Calendar cd = Calendar.getInstance(); 
cd.setTime(inputDT); 
int iD = cd.get(Calendar.DAY_OF_MONTH); 
if (iD < 10){ dd = "0" + String.valueOf(iD); } 
    else { dd = String.valueOf(iD); } 
int iM = cd.get(Calendar.MONTH)+1; 
    if (iM < 10){ mm = "0" + String.valueOf(iM); } 
    else { mm = String.valueOf(iM); } 
int iY = cd.get(Calendar.YEAR); 
    yyyy = String.valueOf(iY); 
stDate = yyyy+"-"+mm+"-"+dd; 
return stDate; 

}

pour obtenir la variable 'long' devenir «date limite d'utilisation de la date (de longue date) de java.util.Date}