title: Parsing french dates in Java
body: <p>I am given the following date string</p>
  
  <pre><code>10 juil 2014
  </code></pre>
  
  <p>Looking up the name of the months of the year in French, I see that <code>juil</code> is an abbreviation for <code>juillet</code>, which refers to July in English.</p>
  
  <p>I try to parse it using <code>SimpleDateFormat</code> with <code>French</code> locale:</p>
  
  <pre><code>System.out.println(new SimpleDateFormat("dd MMM yyyy", Locale.FRENCH).parse("11 juil 2014"));
  </code></pre>
  
  <p>But it throws an exception</p>
  
  <pre><code>java.text.ParseException: Unparseable date: "11 juil 2014"
      at java.text.DateFormat.parse(DateFormat.java:357)
  </code></pre>
  
  <p>I then try adding a period right after the month name</p>
  
  <pre><code>System.out.println(new SimpleDateFormat("dd MMM yyyy", Locale.FRENCH).parse("11 juil. 2014"));
  </code></pre>
  
  <p>And now I get the following output</p>
  
  <pre><code>Fri Jul 11 00:00:00 EDT 2014
  </code></pre>
  
  <p>So it looks like I need a period, but then when I try to parse a March date (<code>mars</code>), if you add the period, it is not recognized.</p>
  
  <p>How should I parse french dates? I can do it in two passes: first with a period, and then without a period, and hope that one of them will do the trick, but is there a better way?</p>