2013-06-26 6 views
-1

Dans mon code, je reçois cette date chaîne:Convertir la date en chaîne en Java?

date="2013-06-15" 

Je veux qu'il convertir 15 juin 2013. J'ai essayé dateFormat:

DateFormat df = new SimpleDateFormat("yyyy-mm-dd"); 
String date = df.format(det); 
DateFormat f2 = new SimpleDateFormat("dd-mmmm-yyyy"); 
date=f2.format(date).toLowerCase(); 
out.println("DATE"+date); 

Mais il a donné un pointeur nul Quelqu'un pourrait-il me aider à faire this.Please aide?

+2

"date String = df.format (DET);" qu'est-ce que det? – Bathsheba

+0

Où est lancé le NPE? – Kai

Répondre

1

d'abord convertir votre chaîne de date à ce jour puis le convertir à votre format requis

package naveed.workingfiles; 

import java.text.SimpleDateFormat; 
import java.util.Date; 
import java.util.Locale; 

public class DateToString { 

public static void main(String[] args) { 

String laDate="2013-06-15"; 
String dateString = laDate.substring(8, 10) + "/" 
      + laDate.substring(5, 7) + "/" 
      + laDate.substring(0, 4); 
Date date= new SimpleDateFormat("dd/MM/yyyy").parse(dateString); 
String dateFormat = "dd-MMM-yyyy"; 
SimpleDateFormat sdf = new SimpleDateFormat(dateFormat, new Locale("en_US")); 
String tDate = sdf.format(date); 
System.out.println(tDate);//here your String date 

} 

} 
2
String dateString="2013-06-15"; 
Date date = new SimpleDateFormat("yyyy-MM-dd").parse(dateString); 
DateFormat df = new SimpleDateFormat("dd-MMM-yyyy"); 
DateFormat df2 = new SimpleDateFormat("dd MMM yyyy"); 
System.out.println(df.format(date).toLowerCase());//print 15-jun-2013 
System.out.println(df.format(date));//print 15-Jun-2013 
System.out.println(df2.format(date));//print 15 Jun 2013 
1
// Create an instance of SimpleDateFormat used for formatting 
// the string representation of date (month/day/year) 
DateFormat df = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss"); 

// Get the date today using Calendar object. 
Date today = Calendar.getInstance().getTime();   
// Using DateFormat format method we can create a string 
// representation of a date with the defined format. 
String reportDate = df.format(today); 

// Print what date is today! 
System.out.println("Report Date: " + reportDate); 
1

Ça ne va pas le travail: format() ne prend pas les paramètres de chaîne:

String date = df.format(det); 
DateFormat f2 = new SimpleDateFormat("dd-mmmm-yyyy"); 
date=f2.format(date).toLowerCase(); 

Essayez ceci:

String dateAsString = "2013-06-15" 
DateFormat df = new SimpleDateFormat("yyyy-MM-dd"); 
Date date = df.parse(dateAsString); 
df = new SimpleDateFormat("dd MMM yyyy"); 
out.println("DATE"+df.format(date)); 
+1

Ceci est réellement faux, M = Mois, m = minute – fareed

+0

@ theded thx. putain de copier coller erreur;) –

+0

vous êtes les bienvenus :) – fareed

1

Cela fonctionne

String dateStr = "2013-06-15"; 
    DateFormat df = new SimpleDateFormat("yyyy-MM-dd"); 
    Date date=df.parse(dateStr); 
    DateFormat f2 = new SimpleDateFormat("dd-MMM-yyyy"); 
    System.out.println(f2.format(date)); 
Questions connexes