Bonjour,
J'ai une JXTable dans laquelle j'ai une colonne de type DateTime.
Si j'affiche la DateTime au format "JJ/MM/YY HH:MM:SS", j'arrive à trier et à filtrer ma colonne sans problème.
J'utilise pour le tri le comparator ci-dessous :
On m'a demandé d'afficher la DateTime au format "nom_du_jour JJ nom_du_mois HH:MM".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 private class cli_datetime_comparator implements Comparator<String> { public cli_datetime_comparator() {} public int compare(String o1, String o2) { final Pattern pattern = Pattern.compile( "\\d{2}/\\d{2}/\\d{4} \\d{2}:\\d{2}:\\d{2}" ); Matcher matcher = pattern.matcher( o1 ); String w = ""; /* Date au format 99/99/9999 HH:MM:SS */ if(matcher.find()) { // Je fais des substring pour récupérer jour, mois, année, heures, minutes, secondes //Puis je fais une variable Date avec ces valeurs et je teste si date1 est avant date2. } .... } }
exemple : lun. 24 fevr. 10:30.
Je n'arrive pas à modifier mon comparator pour prendre en compte ce format.
Le problème c'est que dans mon comparator je récupère la valeur de la vue. N'est-il pas possible de récupérer la valeur du model ???
J'ai fais quelques recherches, j'ai vu des choses comme TableRowSorter, mais je ne vois pas trop comment ca s'utilise ...
Auriez-vous des idées ???
Merci d'avance
fredgt
Partager