Question: Why this code doesn't raise a 'ParseException' ?

```
DateFormat formatter = new SimpleDateFormat("dd/mm/yyyy");
try {
     String date = "01/01/200'";
     formatter.parse(date);
} catch (ParseException ex) {
     throw new ParseException("Formato de fecha inválido",0);
}

```

Please explain that to me, I'm lost on that. And note the simple quote `'`

Answer: 
According to the Javadocs for [`SimpleDateFormat`](http://download.oracle.com/javase/1.4.2/docs/api/java/text/SimpleDateFormat.html)

> 
> For parsing, if the number of pattern letters is more than 2, the year is interpreted literally, regardless of the number of digits. So using the pattern "MM/dd/yyyy", "01/11/12" parses to Jan 11, 12 A.D.
> 
> 
> 

So I suspect this parses the year as 200 A.D.

I just ran your program and that's what's going on. The converted `Date` is:

```
Date = Tue Jan 01 00:01:00 EST 200

```
The `parse` method will ignore any non numeric character at the end of the parsing date.

For example if parsing `"01/01/01asdsdf0'"` it will take care only of the `"01/01/01"` and will ignore the text... so the year will be 01.

But if you try to parse `"01/01/asdsdf0'"` will raise the exception as no numeric year is present.