文字列が与えられたときに日付オブジェクトを返す小さなメソッドを書いています。以下に示すような方法は次のとおりです。2つの異なる文字列に同じ日付を与える単純な日付書式
public Date getDateObjectFromString(String dateAsString)
{
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ");
Date tempDate = null;
try
{
tempDate = sdf.parse(dateAsString);
}
catch(ParseException pe)
{
//do some error reporting here
}
return tempDate;
}
すべてがOK取り組んでいるが、私は明確にしたいのですが、何かに遭遇しました。このメソッドに2つの異なる文字列を渡すと、デバッガで値を読み取るときに同じ日付が返されます。私は合格しています2つの文字列がある:あなたが、私は、デバッガでこれらの新しく作成された日付の可変出力を見ると、これらの2つの文字列がほぼ同一であり、見ることができるように
2011-07-21T19:44:00.000-0400
2011-07-21T19:44:00.000-04:00
が、それはまったく同じ日付を表示/いずれかの文字列の時間。したがって、デバッガで同じ日付が表示されている場合は、2番目の文字列(04:00)のコロンは何か違いがありますか?私は心配する必要がありますか、後で奇妙なバグが出現することなく進めることができますか?
あなたはそれらを渡す前にすべての文字列を正規化できませんか?とにかくこれが最良の方法かもしれません –
@citizen conn - yes ...しかし、もしあれば、その違いは何かと思っていました。ご返信ありがとうございます。 – dell116