2013-07-29 3 views
8

は私が文字列の日付形式を変更し、AndroidでTextViewに設定しますか?

String date ="29/07/13"; 

ようになっていることを私の日付形式を変更したい。しかし、それは私に* 解析できない日付のエラーを示している:「29/07/2013」 * (ではオフセット2)この形式で日付を取得したいのですが、2009年7月29日

ここに私のフォーマットを変更するためのコードがあります。 MM/dd/yyyy

tripDate = (TextView) findViewById(R.id.tripDate); 
    SimpleDateFormat df = new SimpleDateFormat("MMM d, yyyy"); 
      try { 
       oneWayTripDate = df.parse(date); 
      } catch (ParseException e) { 

       e.printStackTrace(); 
      } 
      tripDate.setText(oneWayTripDate.toString()); 

答えて

24

はこのようにしてみてください。

String date ="29/07/13"; 
SimpleDateFormat input = new SimpleDateFormat("dd/MM/yy"); 
SimpleDateFormat output = new SimpleDateFormat("dd MMM yyyy"); 
try { 
    oneWayTripDate = input.parse(date);     // parse input 
    tripDate.setText(output.format(oneWayTripDate)); // format output 
} catch (ParseException e) { 
    e.printStackTrace(); 
} 

それは2段階のプロセスです:あなたは、最初のDateオブジェクトに既存の文字列を解析する必要があります。次に、Dateオブジェクトを新しいStringにフォーマットする必要があります。

+2

ありがとうございました。 – Developer

7

変更フォーマット文字列、format()ながらparse()dd MMM yyyyを使用しながら。

サンプル:

String str ="29/07/2013"; 
// parse the String "29/07/2013" to a java.util.Date object 
Date date = new SimpleDateFormat("dd/MM/yyyy").parse(str); 
// format the java.util.Date object to the desired format 
String formattedDate = new SimpleDateFormat("dd MMM yyyy").format(date); 
0
DateFormat df = new SimpleDateFormat("dd/MM/yyyy, HH:mm"); 
String date = df.format(Calendar.getInstance().getTime()); 
関連する問題