IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Dotnet Discussion :

extraire une sous chaine puis la convertir en float [Débutant]


Sujet :

Dotnet

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 12
    Points : 8
    Points
    8
    Par défaut extraire une sous chaine puis la convertir en float
    bonjour tout le monde
    j'ai une chaîne sous la forme suivante "PT462H22M45S"
    PT == période de travail
    H == heure
    M == minute
    S == seconde
    je veux calculer la durée en jours
    je veux extraire le nombre d'heure, de minute et de seconde
    je ne trouve pas une idée claire
    pour le SUBSTRING je ne sais pas le nombre de positions occupées par les heures (il peut être 2,3 ou plus)
    donc elle n'est pas opérationnelle pour moi

    s'il y a quelqu'un a une idée je veux qu'il m'aider après son accord , évidement

    après l’extraction des sous-chaînes numérique, le problème est résolu (devenu très simple)


    merci pour tout le monde
    cordialement

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Points : 5 100
    Points
    5 100
    Par défaut
    Bonjour,

    La méthode IndexOf permet de connaître la position de la première occurence recherchée.
    Code csharp : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        private void button1_Click(object sender, EventArgs e)
        {
            string data = "PT564H22M45S" ;
            // Prelève les caractères avant le "H" puis ceux après le "T"
            float f = float.Parse(data.Substring(0, data.IndexOf("H")).Substring(data.IndexOf("T") + 1));
        }

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 12
    Points : 8
    Points
    8
    Par défaut IndexOf est une solution
    merci bien tu me donne l'idée
    je comprend quelque chose très intéressante (indexof)
    je travail avec VB.net mais je peux complète maintenant
    merci bien
    très cordialement

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Points : 5 100
    Points
    5 100
    Par défaut
    Comme tu avais parlé de Float => C#.
    En VB.NET :
    Code vb.net : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
            Dim data As String = "PT564H22M45S"
            ' Prelève les caractères avant le "H" puis ceux après le "T"
            Dim Num As Single = Single.Parse(data.Substring(0, data.IndexOf("H")).Substring(data.IndexOf("T") + 1))
        End Sub

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 12
    Points : 8
    Points
    8
    Par défaut mon problème est resolu
    merci bien
    c'est juste
    moi je propose le suivant

    Dim s As String = "PT4612H0M0S"
    s = s.Substring(s.IndexOf("T") + 1, s.IndexOf("H") - s.IndexOf("T") - 1)



    il est juste pour les heure
    la partie restante est très facile
    donc je veux vraiment vous remercie
    mon problème est résolu

    mes sincère salutation

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Sed extraire une sous-chaine lettre de lecteur
    Par eZula dans le forum Shell et commandes GNU
    Réponses: 12
    Dernier message: 05/03/2008, 07h34
  2. extraire une sous chaine d'un char*
    Par john123 dans le forum C
    Réponses: 7
    Dernier message: 13/10/2007, 00h20
  3. Extraire une sous-chaine
    Par tomy29 dans le forum Delphi
    Réponses: 5
    Dernier message: 25/07/2007, 12h16
  4. Réponses: 6
    Dernier message: 25/06/2007, 11h00
  5. Réponses: 2
    Dernier message: 09/09/2006, 10h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo