将字符串“11-10-10 12:00:00”转换为Date对象

时间:2011-01-03 13:46:35

标签: java date-format simpledateformat

  

可能重复:
  how to parse date in java?

我想将字符串"11-10-10 12:00:00"转换为Date对象,但我无法这样做。你能帮帮我吗?

我的Date对象的值为“Mon Oct 11 00:00:00 IST 2010”

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();    
 }

3 个答案:

答案 0 :(得分: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 demo

答案 1 :(得分:0)

我认为这是Java代码 - 不是我的专长 - 但我认为你的问题是格式字符串中的“hh”,这会导致parse解释“12:00: 00“午夜而不是中午。尝试将其更改为“HH”并查看是否正确解析。

答案 2 :(得分:0)

你需要使用CultureInfo for Hindi它是“hi-IN”。有关完整文化列表,请点击此链接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));
    }
}