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 :

[VB.net] Saisi ligne dans un tableau


Sujet :

VB.NET

  1. #1
    Invité
    Invité(e)
    Par défaut [VB.net] Saisi ligne dans un tableau
    Bonjour tous le monde ma question est simple enfin à priori j'ai ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    File(0, 0) = "Open Socket.SLDPRT"
    File(0, 1) = NameFile + Number + ".SLDPRT"
    que j'aimerait pouvoir remplacer par un code dans le genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    File(0, 0) ="Open Socket.SLDPRT",NameFile + Number + ".SLDPRT"
    Ou je saisie directement la ligne complète est ce possible ?

  2. #2
    Membre chevronné
    Avatar de Sehnsucht
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2008
    Messages
    847
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Octobre 2008
    Messages : 847
    Points : 2 209
    Points
    2 209
    Par défaut
    Si c'est pour tout mettre dans la même "case" de tableau (ici 0,0) il faut que tu concatènes tes 2 éléments (avec + ou &) mais a priori tu sais déjà le faire (vu que t'utilises déjà NameFile + Number) donc il ne doit pas s'agir de ça
    Si l'idée c'est de remplir les 2 cases du tableau d'un seul coup sur un tableau déjà pré-existant là t'auras pas le choix il faudra que tu le fasses en 2 lignes (ce qui n'est pas la mort au passage )
    Si, enfin, tu veux créer le tableau, ça peut se faire mais il faudra donner tous les éléments du tableau à l'initialisation donc faire Dim File(,) As String = {{"Open Socket.SLDPRT", NameFile + Number + ".SLDPRT"}} et ainsi ton tableau aura une taille (.Length) de 2 (et s'il y a plus d’éléments donc il faudra tous les mettre, ce qui peut vite devenir illisible sur une seule ligne)

    Et s'il s'agit d'autre chose, alors j'ai rien compris
    Nous sommes tous plus ou moins geek : ce qui est inutile nous est parfaitement indispensable ( © Celira )
    À quelle heure dormez-vous ?
    Censément, quelqu'un de sensé est censé s'exprimer sensément.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Ce qui m'intéressait c'était la deuxième solution en effet ce n'est pascal mort c'est juste que trouve sa moins lisible mais bon je vais faire avec

    Merci de ta réponse en tout cas

  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
    Bonjour,

    Tu devrais décrire comment tu souhaites gérer tes chaînes de caractères fonctionnellement.

    L'utilisation de collection donne l'accés à de nombreuses fonctionnalités de manipulations. (mais ce n'est pas un tableau (voir 1), cela ne correspond donc peut-être pas à ce que tu veux)
    Un exemple (simpliste.) qui permet la saisie sur une ligne (mais il existe d'autres solutions) l'utilisation d'un dictionnaire avec une paire clé/valeur de type string/string
    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
    Public Class Form1
     
        Dim NameFile As String = "file"
        Dim number As Integer = 1
     
        Dim DicoFile As Dictionary(Of String, String) = New Dictionary(Of String, String)
     
        Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
            DicoFile.Add("Open Socket.SLDPRT", NameFile & number.ToString & ".SLDPRT")
        End Sub
     
        Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
            MessageBox.Show(DicoFile("Open Socket.SLDPRT"))
        End Sub
     
    End Class
    Mais pour te guider vers la solution adéquate, il nous faudrait plus d'info sur ton but.

    En vb le caractère de concaténation de chaîne conseillé est le caractère &
    Tiré de msdn : Opérateurs de concaténation (Visual Basic)
    &, opérateur (Visual Basic) est uniquement défini pour les opérandes String et il étend toujours ses opérandes à String, indépendamment de la définition d'Option Strict. L'opérateur & est recommandé pour la concaténation de chaîne car il est exclusivement défini pour les chaînes et limite les risques de conversion inattendue.
    Au passage met les options de compil sur "Option strict on"

    (1) quelques info msdn
    Les collections en tant qu'alternative aux tableaux

    Les tableaux sont plus utiles pour la création et l'utilisation d'un nombre fixe d'objets fortement typés.Les collections offrent plus de souplesse pour utiliser des groupes d'objets.Contrairement aux tableaux, le groupe d'objets utilisé peut augmenter ou diminuer de façon dynamique si les besoins de l'application varient.

    Si vous devez modifier la taille d'un tableau, vous devez utiliser l'ReDim, instruction (Visual Basic).Dans ce cas, Visual Basic crée un tableau et libère le tableau précédent pour qu'il soit supprimé.Cela nécessite un temps d'exécution.Par conséquent, si le nombre d'éléments avec lesquels vous travaillez change fréquemment ou si vous ne pouvez pas prévoir le nombre maximal d'éléments dont vous aurez besoin, vous pourriez obtenir des performances supérieures en utilisant une collection.

    Pour certaines collections, vous pouvez assigner une clé à tout objet que vous placez dans la collection afin que vous puissiez rapidement récupérer l'objet à l'aide de la clé.

    Si votre collection se limite à des éléments d'un seul type de données, vous pouvez utiliser l'une des classes de l'espace de noms System.Collections.Generic.Une collection générique met en vigueur la sécurité de type afin qu'aucun autre type de données ne puisse lui être ajouté.Lorsque vous récupérez un élément à partir d'une collection générique, il n'est pas nécessaire de déterminer son type de données ni de le convertir.
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

Discussions similaires

  1. Problème saut de ligne dans un tableau
    Par talggir dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 23/11/2005, 15h10
  2. [Struts] Index de ligne dans 1 tableau
    Par javaSudOuest dans le forum Struts 1
    Réponses: 9
    Dernier message: 20/10/2005, 09h52
  3. [VB.NET] - affichage dynamique dans un tableau
    Par karibouxe dans le forum ASP.NET
    Réponses: 8
    Dernier message: 20/06/2005, 15h07
  4. probleme bizarre de hauteur auto d'une ligne dans un tableau
    Par zax-tfh dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 17/01/2005, 23h34
  5. [C#] Affichage des lignes dans un tableau.
    Par maldufleur dans le forum ASP.NET
    Réponses: 4
    Dernier message: 21/04/2004, 11h28

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