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

VB.NET Discussion :

string$( nombre de décimales, valeur)


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 265
    Par défaut string$( nombre de décimales, valeur)
    Bonjour les amis,
    Essayant de retranscrire un programme en VB.Net en un autre langage, je bute sur une fonction.
    Déjà je ne retrouve pas l'occurrence String$ sur la toile.
    La fonction est donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fmt = fmt + "." + String$( NbDecimales, 48 )
    Que peut bien signifier le 48?
    Merci à vous.

  2. #2
    Membre Expert Avatar de Thumb down
    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2019
    Messages
    1 574
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juin 2019
    Messages : 1 574
    Par défaut
    Bonjour,
    Dans ce que tu nous montres je ne vois pas de VB.net et je ne sais pas vers quel langage tu veux migré !

    Saches que l'instruction tel que tu l'exprime ressemble à du VBA!
    V=STRING$(4,"0") 'string$(nombreChar,"Caractère")

  3. #3
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 251
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 251
    Par défaut
    idem, ça ressemble plus à du VBA que du VB.net.

    48 est le code ascii du caractère "0"

  4. #4
    Membre Expert Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Par défaut
    Bonjour,

    La fonction String (du VBA) ou String$ (du VB 5 ?, ou antérieur, quand on utilisait encore le caractère $ ...), sert à créer une chaine composée d'un caractère donné répété un nombre de fois également donné.
    Dans ton exemple, le caractère donné est le zéro (ASCII 48) et il doit être répété NbDecimales fois.

    Tu peux toujours recréer la fonction suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Function MaFonctionString(Nombre As Integer, Caractere As Char) As String
    Dim Resultat As String = String.Empty
    For i As Integer = 1 To Nombre
      Resultat &= Caractere
    Next i
    Return Resultat
    End Function
    Pour l'exemple, tu peux tester cette fonction comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
            MessageBox.Show(MaFonctionString(5, "0"))
         End Sub
    Mais si le but est de formater des chaines représentant des valeurs numériques, tu peux t'intéresser aux outils de VB.Net, tels que PadLeft, PadRight, Format :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    VariableChaine = UneChaineACompleter.PadLeft(Nombre,  Caractere)
    VariableChaine = UneChaineACompleter.PadRight(Nombre,  Caractere)
     
    VariableChaine = String.Format("Modele", VariableNumerique) ' il existe de nombreux modélles.
    ' par exemple :
    VariableChaine = String.Format("{0:###.#}", 12.35)   ' VariableChaine reçoit : 12.4
    J'espère que ceci te donnera des idées ...

  5. #5
    Membre Expert Avatar de Thumb down
    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2019
    Messages
    1 574
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juin 2019
    Messages : 1 574
    Par défaut
    re bonjour,
    Code Dot .Net : Sélectionner tout - Visualiser dans une fenêtre à part
     MessageBox.Show(New String("C", 10))
    Comme notre amis voulait migrer ce qu'il pensait être du vb.net en autre langage il serait intéressant qu'il nous précise quel est cet autre langage qu'on ne s'évertue pas à lui donner en Vb.net, ce qui ne l'intéresse vraisemblablement pas!

  6. #6
    Membre Expert Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Par défaut
    Ok Thumb down tu as raison : j'ai tout simplement "pas lu" l'énoncé
    Effectivement, en connaissant le langage cible, il serait plus facile d'y répondre.

  7. #7
    Membre très actif
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 265
    Par défaut
    Holà merci les amis.
    Pour le langage du programme duquel je suis parti je l'ai récupéré dans une rubrique "Visual Basic / VB.NET".
    Le plus étrange c'est de ne pas avoir trouvé d'occurrence "String$" sauf mauvaise recherche.
    Ah oui d'accord après coup le 48 correspond au code ASCII ce qui est logique comme on doit ajouter des "0".
    Mes langages de programmation sont Delphi et Xojo (RealBasic).
    Encore merci.

  8. #8
    Membre Expert Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Par défaut
    Bonjour,
    Je ne sais pas si l'instanciation d'une chaine telle proposée par Thumb down est transcriptible en Delphi (probablement que oui) mais la boucle de concaténation que j'ai écrite doit pouvoir être traduite dans n'importe langage.
    En tous cas, tu sais mainrenant ce que fait la fonction String$, tu peux la récrire à ta mode.
    Bon codage ...

  9. #9
    Membre très actif
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 265
    Par défaut
    Bien sûr Phil, après coup je suis presque gêné d'avoir posé la question, s'il y avait eu un caractère devant le 48 je ne me serais sans-doute pas posé la question.

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

Discussions similaires

  1. Convert String represent Hexa en valeur Décimal
    Par gdev7 dans le forum Langage
    Réponses: 4
    Dernier message: 25/02/2008, 11h55
  2. [String] Nombre occurrences
    Par djunityfr dans le forum Langage
    Réponses: 3
    Dernier message: 24/03/2006, 15h40
  3. casting DWORD en string, garder la même valeur
    Par titouille dans le forum SL & STL
    Réponses: 2
    Dernier message: 19/08/2005, 21h17
  4. Comparaison string nombre
    Par yanndublanche dans le forum Langage
    Réponses: 3
    Dernier message: 30/06/2005, 14h51
  5. select avec un nombre limité de valeurs retournées
    Par felix79 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 23/12/2004, 15h16

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