0

こんにちは私は異なる形式の2つの入力日付を持っているので、それらを反復処理し、if-elseを使用して新しい形式に変換する方法を教えてください。これが私の入力です:String first = "Mar 12"; 文字列second="2010年2月23日"; これらの異なる形式を新しい形式に変換しようとしています。

私は次のコードを使用しました:

Date date=new Date();
//I used this format for Mar 12
DateFormat dateFormat1=new SimpleDateFormat("MMM dd"); 
// Mar 12 gets converted in follwing new format
DateFormat dateFormat2=new SimpleDateFormat("yyyy-MM-dd");  
//I used this format for Feb 23 2010
DateFormat dateFormat3=new SimpleDateFormat("MMM dd yyyy"); 
// Feb 23 2010 gets converted in follwing new format
DateFormat dateFormat4=new SimpleDateFormat("yy-MM-dd");

date=dateFormat1.parse("first");
first=dateFormat2.format(date);
date=dateFormat3.parse("second");
second=dateFormat4.format(date);

今、私は問題に直面しています。if-elseブロックを使用してそれらを新しい形式で解析および変換する方法がわかりません。

4

2 に答える 2

2

文字列の長さ/文字列内のスペースの数を使用 して、形式を区別します。[形式は2つしかないため]。

于 2011-03-31T06:45:57.497 に答える
2

SimpleDateFormat.parseエラーの場合はnullを返します。したがって、次のようなことができます。

date = dateFormat1.parse(first, new ParsePosition(0));
if (date == null) {
  date = dateFormat2.parse(first, new ParsePosition(0));
}
于 2011-03-31T06:46:48.890 に答える