如何使用java将GMT日期转换为MM / dd / yyyy

时间:2017-03-21 07:11:09

标签: java date simpledateformat date-format

在这里,我附上了我的代码,最后我得到了字符串格式的日期(例如:1)。但我想要它的日期格式(例如:2)
实施例:1

 import java.util.Date;
 import java.text.DateFormat; 
 import java.text.SimpleDateFormat;

 public class Example{     
 public static void main(String []args){        
 java.util.Date date = new Date("Sat Dec 01 00:00:00 GMT 2017");               
 DateFormat formatter = new SimpleDateFormat("MM/dd/yyyy");              
 String formatz = formatter.format(date);           
 System.out.println(formatz);     
}}

O / P是:

12/01/2017 // String so i cant able to parse it on my query.

例如:2

 import java.util.Date;
 import java.text.DateFormat; 
 import java.text.SimpleDateFormat;

 public class Example{     
 public static void main(String []args){        
 java.util.Date date = new Date("Sat Dec 01 00:00:00 GMT 2017");               
 DateFormat formatter = new SimpleDateFormat("MM/dd/yyyy");              
 String formatz = formatter.format(date);  
 Date d1 = formatter.parse(formatz);        
 System.out.println(d1);     
}}

O / P是:

Sat Dec 01 00:00:00 GMT 2017 // but i want 12/01/2017 (date format)

我该如何解决呢。

2 个答案:

答案 0 :(得分:1)

试试这个:

System.out.println(formatter.format(d1));  

答案 1 :(得分:1)

首先,我不能更强烈地建议不要使用旧版java.util.Datejava.util.Calendar。您应该始终使用java.time包中的相应类。

现在,问你的问题。 java.util.Date或任何java.time.*类都不包含有关格式的信息。它们包含足够的信息来表示时刻。如果您想使用与默认格式不同的格式,则需要使用内置格式化程序或您自己的格式化程序。

在您的情况下,因为formatz已经具有您想要的格式,您只需打印它即可。