1

可能重复:
如何在 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();    
 }
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

您需要将 CultureInfo 用于印地语,它是“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));
    }
}
于 2011-01-03T14:05:13.123 回答
0

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

于 2011-01-03T13:58:12.283 回答