1

重複の可能性:
Javaで日付を解析するには?

"11-10-10 12:00:00"文字列をオブジェクトに変換したいのですが、Dateできません。助けてもらえますか?

「Mon Oct 11 00:00:00 IST 2010」という値を持つ Date オブジェクトがあります。

DateFormat newDateFormat = new SimpleDateFormat("dd-MM-yy hh:mm:ss");    
String strDate = newDateFormat.format(tempDate);  
//**i got strDate as strDate is : 11-10-10 12:00:00**
DateFormat newDateFormat1 = new SimpleDateFormat("dd-MM-yy hh:mm:ss");    
try {    
 tempDate = newDateFormat1.parse(strDate); 
     // **getting tempDate as - Mon Oct 11 00:00:00 IST 2010**    
   } catch (ParseException e) {    
 // TODO Auto-generated catch block    
 e.printStackTrace();    
 }
4

3 に答える 3

7
DateFormat newDateFormat = new SimpleDateFormat("dd-MM-yy HH:mm:ss");    
Date d = newDateFormat.parse("11-10-10 12:00:00");
System.out.println(d);

これがideoneのデモです

于 2011-01-03T14:03:13.790 に答える
0

これは私の専門ではない Java コードだと思いますが、フォーマット文字列の「hh」が原因で、parse「12:00:00」が正午ではなく真夜中と解釈されることが問題だと思います。「HH」に変更してみて、正しく解析されるかどうかを確認してください。

于 2011-01-03T13:58:12.283 に答える
0

「hi-IN」であるヒンディー語には CultureInfo を使用する必要があります。文化の完全なリストについては、このリンクを確認してくださいCultureInfo

    class Program
{
    static void Main(string[] args)
    {
        var str = "11-10-10 12:00:00";

        DateTime dateTime = DateTime.Parse(str, new CultureInfo("hi-IN", false));
    }
}
于 2011-01-03T14:05:13.123 に答える