Solved

Java String date conversion from one format to another Java Date format

Posted on 2009-05-08
16
1,257 Views
Last Modified: 2012-05-06
I need to convert the Java date from one format to another format and get returned date in new format which shoud be java.util.Date object only.

I have written following given below method but I am getting same output as input.

calling of method
convertStringToDateNew("Wed Apr 29 01:12:44 IST 2009", "MM/dd/yyyy HH:mm:ss");
public static Date convertDateToNewFormat(String sDate, String dateFormat)  throws TechnicalException
    {
        SimpleDateFormat expectedDateFormat = new SimpleDateFormat("E MMM dd HH:mm:ss z yyyy");
        SimpleDateFormat requiredDateFormat= new SimpleDateFormat(dateFormat);
       
        Date date = null;
        try
        {
        	if(sDate != null)
        	{
	            date = expectedDateFormat.parse(sDate);
	            String strDate = requiredDateFormat.format(date);
	            System.out.println("String date ="+strDate);
	            date = requiredDateFormat.parse(strDate);
 
           }
        } catch (Exception e)
        {
        	throw new TechnicalException ("Exception in [CommonUtil][convertStringToDate]", e.getMessage());			
        }
        return date;		 
    }

Open in new window

0
Comment
Question by:VikasGupta79
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 7
  • 7
  • 2
16 Comments
 
LVL 92

Expert Comment

by:objects
ID: 24334268
your method should return astring, not a Date. Date has no idea about formatting

public static String convertDateToNewFormat(String sDate, String dateFormat)  throws TechnicalException
    {
        SimpleDateFormat expectedDateFormat = new SimpleDateFormat("E MMM dd HH:mm:ss z yyyy");
        SimpleDateFormat requiredDateFormat= new SimpleDateFormat(dateFormat);
       
        String strDate = null;
        try
        {
                if(sDate != null)
                {
                    Date date = expectedDateFormat.parse(sDate);
                   strDate = requiredDateFormat.format(date);
                    System.out.println("String date ="+strDate);
           }
        } catch (Exception e)
        {
                throw new TechnicalException ("Exception in [CommonUtil][convertStringToDate]", e.getMessage());                        
        }
        return strDate;            
    }
0
 

Author Comment

by:VikasGupta79
ID: 24334280
But I need Java.util.Date object to be returned.... if I return String than how will I get date object..
0
 
LVL 92

Expert Comment

by:objects
ID: 24334290
if you need the date object then you have to handle formatting it elsewhere
the method you have effectively does nothing, it just returns the same date that you pass it

0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 12

Expert Comment

by:Gibu George
ID: 24334299
Try this
public static Date convertDateToNewFormat(String sDate, String dateFormat)  throws TechnicalException
    {
        SimpleDateFormat requiredDateFormat= new SimpleDateFormat(dateFormat);
       
        Date date = null;
        try
        {
              if(sDate != null)
              {
                  date = requiredDateFormat.parse(sDate);
 
           }
        } catch (Exception e)
        {
              throw new TechnicalException ("Exception in [CommonUtil][convertStringToDate]", e.getMessage());                  
        }
        return date;             
    }

Open in new window

0
 

Author Comment

by:VikasGupta79
ID: 24334320
Ok..how to do that, I mean I have date object which has date in "Wed Apr 29 01:12:44 IST 2009" format now I need to format this date object into "MM/dd/yyyy HH:mm:ss" date format...
0
 
LVL 12

Expert Comment

by:Gibu George
ID: 24334373
Sorry!! my answer was wrong. I would like to know how you are checking the format of the date after conversion
0
 
LVL 12

Expert Comment

by:Gibu George
ID: 24334384
Your code is correct and is working fine, just do an SOP of the returned date and it prints out with the format which you passed.
0
 

Author Comment

by:VikasGupta79
ID: 24334434
SOP will work fine becox its internally calls toString() method ....I have to set the new formatted date string in date object as its required for me to set this formatted date in another method....
0
 
LVL 12

Expert Comment

by:Gibu George
ID: 24334512
In date object date is kept as time in millis not in any particular format. You can format it for display purposes as string using SimpleDateFormat
0
 

Author Comment

by:VikasGupta79
ID: 24334808
It does not solve my problem, so is there any way I get the formatted date object
0
 
LVL 12

Expert Comment

by:Gibu George
ID: 24334852
Why you want a formatted date object?
0
 

Author Comment

by:VikasGupta79
ID: 24334882
becx
1. I cant shw "Wed Apr 29 01:12:44 IST 2009" this kind of date to user as we have different format on UI
2. I need date object only as I need sort the list of items on date object.

I dont have any control on sorting API's as its framework provided.....so I got stuck here...
0
 
LVL 12

Expert Comment

by:Gibu George
ID: 24334994
Does the sorting api expects the date in MM/dd/yyyy HH:mm:ss format or will it take any format?
0
 

Author Comment

by:VikasGupta79
ID: 24335009
our application requirement is MM/dd/yyyy HH:mm:ss  format....so we cant devate from that
0
 
LVL 12

Accepted Solution

by:
Gibu George earned 50 total points
ID: 24335027
You have control over the presentation part, so format it while displaying only.
0
 

Author Closing Comment

by:VikasGupta79
ID: 31579357
Thanks allot for your help!!!!
0

Featured Post

Want Experts Exchange at your fingertips?

With Experts Exchange’s latest app release, you can now experience our most recent features, updates, and the same community interface while on-the-go. Download our latest app release at the Android or Apple stores today!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

There are times when I have encountered the need to decompress a response from a PHP request. This is how it's done, but you must have control of the request and you can set the Accept-Encoding header.
This article describes how to import Lotus Notes Contacts into Outlook 2016, 2013, 2010 and 2007 etc. with a few manual steps. You can easily export and migrate Lotus Notes contacts into Microsoft Outlook without having to use any third party tools.
In this video, viewers will be given step by step instructions on adjusting mouse, pointer and cursor visibility in Microsoft Windows 10. The video seeks to educate those who are struggling with the new Windows 10 Graphical User Interface. Change Cu…
Do you want to know how to make a graph with Microsoft Access? First, create a query with the data for the chart. Then make a blank form and add a chart control. This video also shows how to change what data is displayed on the graph as well as form…

631 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question