Senti non sò se può aiutarti, ma io ho creato una classe per gestire le date, sicuramente non è la soluzione migliore, ma potrebbe servirti
import java.util.GregorianCalendar;
public class MyData {
private String giorno;
private String mese;
private String anno;
public MyData (String data)
{
try
{
if(data.charAt(1)=='-' && data.charAt(3)=='-')
{
giorno=data.substring(0,1);
mese=data.substring(2, 3);
anno=data.substring(4, 8);
}
else if(data.charAt(1)=='-' && data.charAt(4)=='-')
{
giorno=data.substring(0,1);
mese=data.substring(2, 4);
anno=data.substring(5, 9);
}
else if(data.charAt(2)=='-' && data.charAt(4)=='-')
{
giorno=data.substring(0,2);
mese=data.substring(3, 4);
anno=data.substring(5, 9);
}
else if(data.charAt(2)=='-' && data.charAt(5)=='-')
{
giorno=data.substring(0,2);
mese=data.substring(3, 5);
anno=data.substring(6, 10);
}
else if(data.length()==10)
{
giorno=data.substring(8,10);
mese=data.substring(5, 7);
anno=data.substring(0, 4);
}
else if(data.length()==9 && data.charAt(6)=='-')
{
giorno=data.substring(7,9);
mese=data.substring(5, 6);
anno=data.substring(0, 4);
}
else if(data.length()==9 && data.charAt(7)=='-')
{
giorno=data.substring(8,9);
mese=data.substring(5, 7);
anno=data.substring(0, 4);
}
else if(data.length()==8)
{
giorno=data.substring(7,8);
mese=data.substring(5, 6);
anno=data.substring(0, 4);
}
}catch(StringIndexOutOfBoundsException e)
{
giorno="0";
mese="0";
anno="0";
}
}
public MyData (String g,String m, String a)
{
giorno=g;
mese=m;
anno=a;
}
public MyData (int g,int m, int a)
{
giorno=""+g;
mese=""+m;
anno=""+a;
}
public GregorianCalendar getDataGG_MM_AAAA()
{
GregorianCalendar data = new GregorianCalendar(getIntGiorno(),getIntMese(),getI ntAnno());
return data;
}
public String getDataStrGG_MM_AAAA(String separatore)
{
return getGiorno()+separatore+getMese()+separatore+getAnn o();
}
public boolean before(MyData datapassata)
{
GregorianCalendar data1 =new GregorianCalendar(getIntAnno(),getIntMese(),getInt Giorno());
GregorianCalendar data2= new GregorianCalendar(datapassata.getIntAnno(),datapas sata.getIntMese(),datapassata.getIntGiorno());
return !data2.before(data1);
}
public boolean after(MyData datapassata)
{
GregorianCalendar data1 =new GregorianCalendar(getIntAnno(),getIntMese(),getInt Giorno());
GregorianCalendar data2= new GregorianCalendar(datapassata.getIntAnno(),datapas sata.getIntMese(),datapassata.getIntGiorno());
return !data2.after(data1);
}
public String getSQLData ()
{
return getAnno()+"-"+getMese()+"-"+ getGiorno();
}
public String getGiorno() {
return giorno;
}
public String getMese() {
return mese;
}
public String getAnno() {
return anno;
}
public int getIntGiorno() {
return Integer.parseInt(giorno);
}
public int getIntMese() {
return Integer.parseInt(mese);
}
public int getIntAnno() {
return Integer.parseInt(anno);
}
public void setGiorno(String giorno) {
this.giorno = giorno;
}
public void setMese(String mese) {
this.mese = mese;
}
public void setAnno(String anno) {
this.anno = anno;
}