Convertir champ heure H:M en champ de type entier (en minutes) en JAVA
La JTable comprend le moment de terrain, par exemple "01:50". J'ai besoin de lire cette valeur dans la variable de type entier. Pour cette Id que pour convertir le temps en minutes. Par exemple "01:50" doit être converti en 110.
Pour résoudre la tâche, j'ai d'abord enregistré la valeur de temps comme une Chaîne de caractères.
String minutS = tableModel.getValueAt(1,1).toString();
Deuxièmement, Im va pour traiter cette Chaîne et d'en extraire les entiers, avant et après le symbole :
. Enfin, je vais calculer le nombre total de minutes.
La solution est-elle efficace? Peut-être, il est possible de la remplacer par Calendrier ou qqch comme ça?
Quel est le type réel des données dans le modèle de table?
OriginalL'auteur Klausos Klausos | 2012-01-18
Vous devez vous connecter pour publier un commentaire.
Je ne pense pas que l'utilisation du Calendrier/Date seront mieux que de simples analyser pour ce cas. Si votre format de l'heure est en effet H:m, alors je ne pense pas que vous avez besoin de quelque chose de plus complexe que cela:
OriginalL'auteur sudocode
Comment à ce sujet:
OriginalL'auteur apines
Regardez l'exemple ci-dessous qui nous aide dans notre application
OriginalL'auteur GustyWind
Bande de votre entrée à l'avant de la traiter. (
commons-lang utils
)espaces peuvent faire
NumberFormatExceptions
se produire.OriginalL'auteur Kristof
Depuis java 1.8 la solution la plus élégante est probablement:
long minutes = ChronoUnit.MINUTES.between(LocalTime.MIDNIGHT, LocalTime.parse("01:50"));
OriginalL'auteur membersound