2

I have problem using Date in java, I have a string that represent a date for example String date = "23/10/2012"; and i have a function that get a date as parameter, for example

public void foo(Date date){...}

my problem is that Date constructor that accept a string is deprecated and i do not want to use a deprecated object.

4

3 回答 3

3

Use SimpleDateFormat.parse(String) to parse a string to java.util.Date object

String date = "23/10/2012"  
Date date = new SimpleDateFormat("dd/MM/yyyy").parse(date);
于 2012-12-11T16:06:15.050 回答
3

So, you look at the Javadoc for the deprecated method which specifies:

Deprecated. As of JDK version 1.1, replaced by DateFormat.parse(String s).

You then look up DateFormat.parse and proceed accordingly. You probably want to create a SimpleDateFormat - or better still, use Joda Time which is a much better date/time API.

When a method is deprecated, it's always a good idea to give an indication of what existing code should be migrated to, and ideally why the old method was deprecated. Follow this guidance when you deprecate your own methods... and whenever you try to use a deprecated method, check the documentation to see if it suggests a better alternative.

于 2012-12-11T16:06:16.803 回答
1

You may need to use SimpleDatFormat (or) Joda library.

Example:

new SimpleDateFormat("dd/MM/yyyy").parse(yourDateString);
于 2012-12-11T16:05:47.537 回答