[Pwsh]Comment convertir un objet en string ?
Résolu
fxtaa
Messages postés
1050
Date d'inscription
Statut
Membre
Dernière intervention
-
fxtaa Messages postés 1050 Date d'inscription Statut Membre Dernière intervention -
fxtaa Messages postés 1050 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Débutant en powershell, j'essaye de récupérer des informations que me sont transmises sous forme d'objet. Actuellement, je fais une manip qui, à mon humble avis, est vraiment moche ......
Donc voila, c'est très moche et je pense qu'il y a un autre moyen d'extraire une String d'un objet non?
Merci
Débutant en powershell, j'essaye de récupérer des informations que me sont transmises sous forme d'objet. Actuellement, je fais une manip qui, à mon humble avis, est vraiment moche ......
for ($i=0 ; $i -lt $test.length; $i++ )
{
$tmp=[string]$test[$i]
$tmp=$tmp.Split("=")[-1]
$tmp=$tmp.Split("}")[0]
echo $tmp
}
Donc voila, c'est très moche et je pense qu'il y a un autre moyen d'extraire une String d'un objet non?
Merci
4 réponses
-
Essaye ça alors:
echo $test[$i].Name
Pour ton information, si tu castes $test en String et que tu demandes le type, c'est normal que tu obtiennes String ;o)
Le GetType().FullName, il faut le faire sur $test. C'est lui l'objet dont tu dois connaître le type.
Et si tu fais ça ?
format-list -InputObject $test
Bon courage, tu débutes non? -
Bonjour,
pour savoir si ta variable est un string, tu peux écrire:
$MaVariable.GetType().FullName
qui doit retourner:
System.String
Une fois que tu as le type de l'objet, tu recherches s'il existe une méthode qui affiche un string à partir de cet objet.
J'ai trouvé ça aussi:
format-list -InputObject $My_Variable
-
Bonjour,
$tmp=[string]$test[$i] $tmp.GetType().FullName
me renvoit bien System.String
par contre :
$toto=format-list -InputObject $tmp echo $toto
me renvoit :
@{ $_.Name =titi}
J'aimerai bien que $toto="titi" -
Oui je viens du bash... En pleine phase d'apprentissage !
format-list -InputObject $test
Me renvoi :
$_.Name : toto
$_.Name : titi
$_.Name : tata
et par contre :
echo $test[$i].Name
ne print rien.
En fait, je voudrais réussir à récupérer les valeurs de mon objet qui semble être un tableau d'objet.