Résolu
Tableau ou pas
- Besançon Ludovic
- Auteur du sujet
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 44
- Remerciements reçus 0
il y a 3 ans 3 mois #30298
par Besançon Ludovic
Tableau ou pas a été créé par Besançon Ludovic
Bonjour,
J'ai un problème avec mes variables qui peuvent être des tableaux ou pas ...Si je veux traiter que les fichiers ayant des données je teste comme celaMais tout va bien si j'ai 0 ou plusieurs lignes, mais si j'en ai une cela coince car ... on dirait que $myData.Count est vide
Comment faire ?
Merci de votre aide.
Ludovic.
J'ai un problème avec mes variables qui peuvent être des tableaux ou pas ...
$myData = Import-CSV BlaBla.csv
If ($myData.Count -gt 0)
Comment faire ?
Merci de votre aide.
Ludovic.
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
- Hors Ligne
- Modérateur
il y a 3 ans 3 mois #30303
par Arnaud Petitjean
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Réponse de Arnaud Petitjean sur le sujet Tableau ou pas
Bonjour Ludovic,
Il y a une petite astuce à connaître en PowerShell pour que le résultat soit retourné systématiquement en tableau, même s'il est vide ou s'il ne contient qu'un seul élément.
Il faut que tu forces la conversion de ton résultat en type tableau. Dans ton cas, cela donnerait :
Une autre possibilité serait de déclarer ta variable $myData de type tableau avant de commencer à l'utiliser. Comme ceci:
Arnaud
Il y a une petite astuce à connaître en PowerShell pour que le résultat soit retourné systématiquement en tableau, même s'il est vide ou s'il ne contient qu'un seul élément.
Il faut que tu forces la conversion de ton résultat en type tableau. Dans ton cas, cela donnerait :
$myData = @(Import-CSV BlaBla.csv)
Une autre possibilité serait de déclarer ta variable $myData de type tableau avant de commencer à l'utiliser. Comme ceci:
$myData = @()
Arnaud
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Les utilisateur(s) suivant ont remercié: Besançon Ludovic
Connexion ou Créer un compte pour participer à la conversation.
- Besançon Ludovic
- Auteur du sujet
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 44
- Remerciements reçus 0
il y a 3 ans 3 mois - il y a 3 ans 3 mois #30304
par Besançon Ludovic
Réponse de Besançon Ludovic sur le sujet Tableau ou pas
Merci la première solution fonctionne correctement.
La deuxième non.
Ludovic.
PS : Merci aussi d'avoir retirer mon message dans le mauvais forum !
La deuxième non.
Ludovic.
PS : Merci aussi d'avoir retirer mon message dans le mauvais forum !
Dernière édition: il y a 3 ans 3 mois par Besançon Ludovic.
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
- Hors Ligne
- Modérateur
il y a 3 ans 3 mois #30305
par Arnaud Petitjean
C'est curieux car pour moi cela fonctionne.
Contenu de mon fichier CSV vide "testvide.csv" :
D'ailleurs ça fonctionne avec ou sans l'arrobase...
Essai avec un fichier CSV rempli "test.csv":
Arnaud
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Réponse de Arnaud Petitjean sur le sujet Tableau ou pas
La deuxième non.
C'est curieux car pour moi cela fonctionne.
Contenu de mon fichier CSV vide "testvide.csv" :
Nom;Prenom,Age
PS > @(import-csv C:\temp\testvide.csv -Delimiter ';').count
0
D'ailleurs ça fonctionne avec ou sans l'arrobase...
Essai avec un fichier CSV rempli "test.csv":
Nom;Prenom,Age
Petitjean;Arnaud;43
Dupuy;Jean;23
PS > (import-csv C:\temp\test.csv -Delimiter ';').count
2
Arnaud
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Connexion ou Créer un compte pour participer à la conversation.
- Besançon Ludovic
- Auteur du sujet
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 44
- Remerciements reçus 0
il y a 3 ans 3 mois #30306
par Besançon Ludovic
Réponse de Besançon Ludovic sur le sujet Tableau ou pas
J'avais compris :afficherait bien 1 si le fichier n'avait qu'une ligne de données.
Ce n'est pas le cas.
La déclaration ne change rien.
Ludovic.
$myData = @()
$myData = Import-CSV BalBla.csv
$myData.Count
Ce n'est pas le cas.
La déclaration ne change rien.
Ludovic.
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
- Hors Ligne
- Modérateur
il y a 3 ans 3 mois #30307
par Arnaud Petitjean
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Réponse de Arnaud Petitjean sur le sujet Tableau ou pas
Oui tu as raison, la déclaration ne change rien.
Cela étant dit, dans mon cas, ça me retourne toujours bien le nombre d'objets importés (correspondant au nombre de lignes).
Arnaud
Cela étant dit, dans mon cas, ça me retourne toujours bien le nombre d'objets importés (correspondant au nombre de lignes).
Arnaud
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.076 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- Tableau ou pas