Récupération de valeurs dans une chaine [Résolu]

Signaler
Messages postés
127
Date d'inscription
mercredi 16 février 2005
Statut
Membre
Dernière intervention
15 février 2010
-
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
-
Bonjour,

Je souhaiterais récupérer dans une chaine la valeur situé après la virgule.
Exemple :

1245623852683,5326
Je souhaiterais dans le cas présent récupérer la valeur 5326.

Avec quelle fonction puis-je faire ça ?
Merci d'avance ;)
Pyrrah
H4ck3r vaillant, rien d'impossible.

5 réponses

Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
38
Salut,

string s1 = "10001,20002";
string s2 = s1.Substring( s1.LastIndexOf( ',' ) + 1 );
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
38
Dans ton premier post ce n'est pas bien clair si ta variable de départ est un réél ou une chaine ni si tu souhaites récupérer un reel ou une chaine.

double d1 = 10001.20002;
// Conversion en Decimal.
decimal m1 = ( ( decimal )d1 - Decimal.Truncate( ( decimal )d1 ) );
// Conversion en String.
string s1 = m1.ToString( System.Globalization.CultureInfo.InvariantCulture );
s1 = s1.Substring( s1.LastIndexOf( '.' ) + 1 );
Messages postés
127
Date d'inscription
mercredi 16 février 2005
Statut
Membre
Dernière intervention
15 février 2010
4
Merci l'ami :)

Pyrrah
H4ck3r vaillant, rien d'impossible.
Messages postés
127
Date d'inscription
mercredi 16 février 2005
Statut
Membre
Dernière intervention
15 février 2010
4
hum, cependant ça marche pas vraiment :(
Il me dit que 'double' ne contient pas de définition pour Substring et pour LastIndexOf ...


using System;
using System.Collections.Generic;
using System.Text;
Voici mon code :
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            double time = ((DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds);
            double time2 = time.Substring(time.LastIndexOf(',') + 1);
            Console.WriteLine(time2);
        }
    }
}


J'arrive pas à repérer ma bêtise...

Pyrrah
H4ck3r vaillant, rien d'impossible.
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
54
string time2 = time.ToString().SubString(...)


[hr]
-Blog-
-Site Perso-