Extraire une Date à partir d'une String dans un fichier
Salut,
Voila je possède un fichier qui ne contient que ce ligne:
Code:
1 2
|
notBefore=Mar 30 12:29:49 2003 GMTnotAfter=Mar 29 12:29:49 2033 GMT |
J'ai arrivé à lire le fichier caractère par caractère avec ce code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Date;
public class Analyse
{
public static void main (String args [])
{
FileReader fic;
int i;
try
{ System.out.println("To day is:"+new Date());
System.out.println();
fic = new FileReader("GetDate.txt");
i=fic.read();
while(i!=-1)
{
char t = (char)i;
System.out.print(t);
/*char c = "=";
int j = indexOf(c, 0);
System.out.print(j);*/
i=fic.read();
}
}
catch (IOException E){E.printStackTrace();}
}
} |
Mais j'ai pas arrivé à extraire cette partie:
Mar 30 12:29:49 2003 GMT
et cette partie:
Mar 29 12:29:49 2033 GMT
pour les convertir ensuite en date.
Merci d'avance.
Extraire une Date à partir d'une String dans un fichier
Bonjour,
Ou bien avec indexOf et lastIndexOf puis substring:
Code:
1 2 3 4 5 6 7 8 9 10
|
String dates = "notBefore=Mar 30 12:29:49 2003 GMTnotAfter=Mar 29 12:29:49 2033 GMT";
int index1 = dates.indexOf("="); // si index1 = -1 erreur de structure
int index2 = dates.indexOf("notAfter"); // si index2 = -1 erreur de structure
String pasAvantLe = dates.substring(index1+1, index2);
System.out.println("Pas avant le : " + pasAvantLe);
index1 = dates.lastIndexOf("="); // si index1 = -1 erreur de structure
String avantLe = dates.substring(index1+1);
System.out.println("Mais avant le : " + avantLe); |
Naturellement, il faut que la "structure" de la chaîne (le String issu de la ligne de texte) soit toujours la même.
Cordialement,
Dan