aspose file tools
The moose likes Java in General and the fly likes Simple Date Formatter Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Head First Android this week in the Android forum!
JavaRanch » Java Forums » Java » Java in General
Bookmark "Simple Date Formatter" Watch "Simple Date Formatter" New topic

Simple Date Formatter

Rimjhim Ray

Joined: Jan 11, 2005
Posts: 9
The following piece of code

newValue = formatter.parse(new String("").trim(), new Pa

returns null in java 1.4 but returns unix epoch time in java 1.3. Can any of you confirm if there has been such a major change in implementation of SDF from 1.3 to 1.4? If it has where can I find the documentation?

Ernest Friedman-Hill
author and iconoclast

Joined: Jul 08, 2003
Posts: 24189

First, note that

new String("").trim()

is the same as

new String("")

which is the same as


Second: I don't see anywhere in the Javadocs where it says that "" will be handled specially; it's not a valid date, so I'd expect null to be returned, regardless of JDK version. I think this code was relying on undefined behavior.

[Jess in Action][AskingGoodQuestions]
Steve Morrow
Ranch Hand

Joined: May 22, 2003
Posts: 657

There seems to be a resurgence of "new String("blah")"...

From the API:

public String(String original)

Initializes a newly created String object so that it represents the same sequence of characters as the argument; in other words, the newly created string is a copy of the argument string. Unless an explicit copy of original is needed, use of this constructor is unnecessary since Strings are immutable.
It is sorta covered in the JavaRanch Style Guide.
subject: Simple Date Formatter
It's not a secret anymore!