Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 9228
  • Last Modified:

how to convert date into dd mon yyyy format

hi all,
i have a problem in date format i am using date like below .
<%java.util.Date date = new java.util.Date();%>

i am inserting date into a table and its storing like this

insert into tablename (d_date) values (date)

and its inserting date like below

Sun Oct 19 09:05:45 GMT+03:00 2003

i want to fetch date in dd mon yyyy format.
with this format i want to make a select query.i struck with the format conversion.



how to do this.

waiting for expert solution.


0
saleemkhan
Asked:
saleemkhan
  • 12
  • 11
1 Solution
 
ZonebitCommented:
saleem,
You would be better off selecting the date from the database as is, then formatting it the way you want it using Java.  You could use the SimpleDateFormat class to accomplish this.

http://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html
0
 
saleemkhanAuthor Commented:
Hi,
 zonebit,
  yes you are right i am fetching date from database only.
i just go throgh  the link u sent me.i couldnt work it out

can u help me
 convert
Sun Oct 19 09:05:45 GMT+03:00 2003
        to
dd mon yyyy

waiting for expert solution.
0
 
ZonebitCommented:
I don't really program java but I think this should work.

import java.text.DateFormat;
import java.text.SimpleDateFormat;

// Select the date from the database and store it in a Date variable called yourDate //

String tPattern = "dd MMM yyyy";
SimpleDateFormat sdf = DateFormat.getDateInstance();
sdf.applyPattern(tPattern);
String formattedDate = sdf.format(yourDate);
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
saleemkhanAuthor Commented:
i tried your comment,

i am getting error here

SimpleDateFormat sdf = DateFormat.getDateInstance();

type mismatch cannot convert from java.text.dateformat to java.text.simpledateformat

0
 
ZonebitCommented:
We'll try this next:

String tPattern = "dd MMM yyyy";
SimpleDateFormat sdf = new SimpleDateFormat(tPattern);
sdf.applyPattern(tPattern);
String formattedDate = sdf.format(yourDate);
0
 
saleemkhanAuthor Commented:
i am getting error

Error 500: Server caught unhandled exception from servlet [JSP 1.2 Processor]: Cannot format given Object as a Date

String yourDate=null;
String tPattern = "dd MMM yyyy";
SimpleDateFormat sdf = new SimpleDateFormat(tPattern);
sdf.applyPattern(tPattern);
String formattedDate =" ";


          if (rs_register.next())             
              {
                    yourDate=rs_register.getString("register_date");
                  }  

 formattedDate=sdf.format(yourDate);
out.print(formattedDate);
0
 
ZonebitCommented:
saleem,

yourDate needs to be a Date object, not a String object.
0
 
saleemkhanAuthor Commented:
i tried like this,

Date yourdate=null;


i am getting the type date is ambiguous.
0
 
ZonebitCommented:
Try:

java.util.Date yourdate = null;
0
 
saleemkhanAuthor Commented:


gettting error here

yourDate=rs_register.getString("register_date");

type mismatch cannot convert from java.lang.string to java.lang.date

0
 
ZonebitCommented:
try:

yourDate = rs_register.getDate("register_date");
0
 
saleemkhanAuthor Commented:
i alreday tried

yourDate =rs_gegister.getDate("register_date")

the database column is varchar2  its not date type

so i have to use

yourDate= rs_register.getString("register_date");

0
 
ZonebitCommented:
right...

yourDate = Date.valueOf(rs_register.getString("register_date"));
0
 
saleemkhanAuthor Commented:
java compile error

Date cannot be resolved

yourDate = Date.valueOf(rs_register.getString("register_date"));




0
 
ZonebitCommented:
yourDate = java.util.Date.valueOf(rs_register.getString("register_date"));
0
 
saleemkhanAuthor Commented:


java compile

the method valueOf java.lang.String is undefined for the type

java.util.Date

0
 
ZonebitCommented:
yourDate = new java.util.Date(rs_register.getString("register_date"));
0
 
saleemkhanAuthor Commented:
java compile

the constructor java.util.date(java.lang.String) is deprecated
0
 
ZonebitCommented:
yourDate = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL).parse(rs_register.getString("register_date"));
0
 
saleemkhanAuthor Commented:
in compile no erros

when i run jsp and print it i am getting like this

Error 500: Unparseable date: "Sun Oct 19 09:05:45 GMT+03:00 2003"
0
 
ZonebitCommented:
tParsePattern = "EEE MMM dd HH:mm:ss zzz yyyy"
SimpleDateFormat ssdf = new SimpleDateFormat(tParsePattern);
yourDate = ssdf.parse(rs_register.getString("register_date"));
0
 
saleemkhanAuthor Commented:
i just tried like this

<%
java.util.Date yourDate = null;
String tParsePattern=null;
tParsePattern = "EEE MMM dd HH:mm:ss zzz yyyy";
SimpleDateFormat ssdf = new SimpleDateFormat(tParsePattern);
yourDate = ssdf.parse("Sun Oct 19 09:05:45 GMT+03:00 2003");
out.print(yourDate);
%>

i am getting error

Error 500: Unparseable date: "Sun Oct 19 09:05:45 GMT+03:00 2003"

0
 
wellileinCommented:
According to the SDK JavaDoc, java.util.Date has the following methods:
getYear(), getMonth(), getDay()
You might try this:
java.util.Date date = new java.util.Date();
String s = date.getDay() + " " + date.getMonth() + " " + date.getYear();

But all these methods are deprecated. You should have a look at java.util.Calendar, which would be
java.util.Calendar cal = new java.util.Calendar();
String s = cal.get(Calendar.DAY_OF_MONTH) + " " + cal.get(Calendar.MONTH)+ " " +cal.get(Calendar.YEAR);
0
 
saleemkhanAuthor Commented:
i understand now where i am wrong.
the below code is not working why because in my server where i am executing code the regional setting month value is in arabic.
i executed the same code in a different server where date and time jones are english its working fine.
All the problem is in regional setting and not the jsp code.


tParsePattern = "EEE MMM dd HH:mm:ss zzz yyyy"
SimpleDateFormat ssdf = new SimpleDateFormat(tParsePattern);
yourDate = ssdf.parse(rs_register.getString("register_date"));
0

Featured Post

Important Lessons on Recovering from Petya

In their most recent webinar, Skyport Systems explores ways to isolate and protect critical databases to keep the core of your company safe from harm.

  • 12
  • 11
Tackle projects and never again get stuck behind a technical roadblock.
Join Now