vik*_*g21 2 java parsing simpledateformat
我试图在解析我的代码中的平面文件后将平面文件中DateTime存在的String 值转换为Date对象.
我已经编写了代码来做到这一点,但是当我格式化日期时,它总是给我一个超过1天的指定值的日期,有时它会添加5:30.
以下是代码:
DateFormat f = new SimpleDateFormat("EEE MMM dd HH:mm:ss zz yyyy");
Date date = f.parse("Tue Aug 23 20:00:03 PDT 2011");
System.out.println("---date----" + date);
Run Code Online (Sandbox Code Playgroud)
上面的输出是
---date----Wed Aug 24 08:30:03 IST 2011
Run Code Online (Sandbox Code Playgroud)
你能告诉我这里的问题吗?我在SimplaDateFormat课堂上使用的模式是否存在问题,或者代码是否存在问题.我已经在这个问题很长时间了.
你能告诉我这里的问题吗?
当然.你打电话有效date.toString(),不知道任何有关SimpleDateFormat其用于分析原始文本值.一个Date是刚刚的时间瞬间.它没有每实例格式的概念.此外,它不知道时区.你已经在PDT中给出了一个值,然后解析了......当你打印它时,它使用的是系统本地时区(IST).这就是Date.toString 总是做.
如果要以Date特定方式格式化a ,使用特定时区中的特定格式,请调用DateFormat.format.