Question
Exporter un tableau a plusieurs dimensions en CSV
- Matthew BETTON
- Hors Ligne
- Membre platinium
-
Réduire
Plus d'informations
- Messages : 968
- Remerciements reçus 0
il y a 12 ans 7 mois #15692
par Matthew BETTON
Réponse de Matthew BETTON sur le sujet Re:Exporter un tableau a plusieurs dimensions en CSV
sp973 écrit:
Désolé, je n'avais pas lu la suite...
$tlConcatTab est un tableau de hash tables .
Une autre solution (basée sur mes exemples précédents) :
[code:1]
$tlConcatTab = @()
$tlConcatTab += @{2=\"192.168.40.23\", \"5500\", \"SWE13\"}
$tlConcatTab += @{1=\"192.168.40.22\", \"5500\", \"SWE12\"}
$tlConcatTab += @{0=\"192.168.40.21\", \"5500\", \"SWE11\"}
$tlConcatTab |
Foreach-Object{ New-Object PSObject -Property @{ Name = \"$($_.Keys)\" ; Value = \"$($_.values)\"} }|
Select-Object Name, Value |
Export-Csv -Path D:\Test.csv -Delimiter \";\" -NoTypeInformation -Encoding UTF8
Invoke-Item D:\Test.csv
[/code:1]
Ou, pour obtenir le même résultat que dans mon précédent post :
[code:1]$tlConcatTab = @()
$tlConcatTab += @{2=\"192.168.40.23\", \"5500\", \"SWE13\"}
$tlConcatTab += @{1=\"192.168.40.22\", \"5500\", \"SWE12\"}
$tlConcatTab += @{0=\"192.168.40.21\", \"5500\", \"SWE11\"}
$tlConcatTab |
Foreach-Object{ New-Object PSObject -Property @{ Name = \"$($_.Keys)\" ; Value = \"$($_.values)\" -replace \" \",\"`n\"} }|
Select-Object Name, Value |
Export-Csv -Path D:\Test.csv -Delimiter \";\" -NoTypeInformation -Encoding UTF8
Invoke-Item D:\Test.csv[/code:1]
mon tableau $global:tlConcatTab (System.Object.Hashtable)
Désolé, je n'avais pas lu la suite...
$tlConcatTab est un tableau de hash tables .
Une autre solution (basée sur mes exemples précédents) :
[code:1]
$tlConcatTab = @()
$tlConcatTab += @{2=\"192.168.40.23\", \"5500\", \"SWE13\"}
$tlConcatTab += @{1=\"192.168.40.22\", \"5500\", \"SWE12\"}
$tlConcatTab += @{0=\"192.168.40.21\", \"5500\", \"SWE11\"}
$tlConcatTab |
Foreach-Object{ New-Object PSObject -Property @{ Name = \"$($_.Keys)\" ; Value = \"$($_.values)\"} }|
Select-Object Name, Value |
Export-Csv -Path D:\Test.csv -Delimiter \";\" -NoTypeInformation -Encoding UTF8
Invoke-Item D:\Test.csv
[/code:1]
Ou, pour obtenir le même résultat que dans mon précédent post :
[code:1]$tlConcatTab = @()
$tlConcatTab += @{2=\"192.168.40.23\", \"5500\", \"SWE13\"}
$tlConcatTab += @{1=\"192.168.40.22\", \"5500\", \"SWE12\"}
$tlConcatTab += @{0=\"192.168.40.21\", \"5500\", \"SWE11\"}
$tlConcatTab |
Foreach-Object{ New-Object PSObject -Property @{ Name = \"$($_.Keys)\" ; Value = \"$($_.values)\" -replace \" \",\"`n\"} }|
Select-Object Name, Value |
Export-Csv -Path D:\Test.csv -Delimiter \";\" -NoTypeInformation -Encoding UTF8
Invoke-Item D:\Test.csv[/code:1]
Connexion ou Créer un compte pour participer à la conversation.
- SP
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 7
- Remerciements reçus 0
il y a 12 ans 6 mois #15715
par SP
Réponse de SP sur le sujet Re:Exporter un tableau a plusieurs dimensions en CSV
Bonjour Matthew,
J'ai essayé les deux codes et il me retourne :
Pour le 1er
\"Name\";\"Value\"
\"5 4 3 2 1 0\";\"System.Object[]
System.Object[]
System.Object[]
System.Object[]
System.Object[]
System.Object[]\"
Pour le 2eme
\"Name\";\"Value\"
\"5 4 3 2 1 0\";\"System.Object[] System.Object[] System.Object[] System.Object[] System.Object[] System.Object[]\"
J'ai essayé les deux codes et il me retourne :
Pour le 1er
\"Name\";\"Value\"
\"5 4 3 2 1 0\";\"System.Object[]
System.Object[]
System.Object[]
System.Object[]
System.Object[]
System.Object[]\"
Pour le 2eme
\"Name\";\"Value\"
\"5 4 3 2 1 0\";\"System.Object[] System.Object[] System.Object[] System.Object[] System.Object[] System.Object[]\"
Connexion ou Créer un compte pour participer à la conversation.
- Matthew BETTON
- Hors Ligne
- Membre platinium
-
Réduire
Plus d'informations
- Messages : 968
- Remerciements reçus 0
il y a 12 ans 6 mois #15716
par Matthew BETTON
Réponse de Matthew BETTON sur le sujet Re:Exporter un tableau a plusieurs dimensions en CSV
Si tu tests ce code (et exactement ce code), cela fonctionne :
[code:1]
$tlConcatTab = @()
$tlConcatTab += @{2=\"192.168.40.23\", \"5500\", \"SWE13\"}
$tlConcatTab += @{1=\"192.168.40.22\", \"5500\", \"SWE12\"}
$tlConcatTab += @{0=\"192.168.40.21\", \"5500\", \"SWE11\"}
$tlConcatTab |
Foreach-Object{ New-Object PSObject -Property @{ Name = \"$($_.Keys)\" ; Value = \"$($_.values)\" -replace \" \",\"`n\"} }|
Select-Object Name, Value |
Export-Csv -Path D:\Test.csv -Delimiter \";\" -NoTypeInformation -Encoding UTF8
Invoke-Item D:\Test.csv
[/code:1]
Le résultat :
[code:1]
\"Name\";\"Value\"
\"2\";\"192.168.40.23
5500
SWE13\"
\"1\";\"192.168.40.22
5500
SWE12\"
\"0\";\"192.168.40.21
5500
SWE11\"
[/code:1]
Le contenu de $tlConcatTab :
[code:1]
PS > $tlConcatTab
Name Value
----
2 {192.168.40.23, 5500, SWE13}
1 {192.168.40.22, 5500, SWE12}
0 {192.168.40.21, 5500, SWE11}
[/code:1]
Cela ne fonctionne pas pour toi parce que l'objet contenu dans la propriété de $tlConcatTab n'est pas au même format que l'objet que j'ai créé pour mes tests et exemples.
Il faut que tu adaptes le code en fonction de ce que contient $tlConcatTab.
A priori, ton précédent poste 'Le contenu de $tlConcatTab' ne me permet pas de t'aider plus en avant. Je ne sais pas comment tu l'as obtenu ... Il manque une ou plusieurs informations.
@ +
Matthew BETTON<br><br>Message édité par: Matthew BETTON, à: 24/08/13 14:13
[code:1]
$tlConcatTab = @()
$tlConcatTab += @{2=\"192.168.40.23\", \"5500\", \"SWE13\"}
$tlConcatTab += @{1=\"192.168.40.22\", \"5500\", \"SWE12\"}
$tlConcatTab += @{0=\"192.168.40.21\", \"5500\", \"SWE11\"}
$tlConcatTab |
Foreach-Object{ New-Object PSObject -Property @{ Name = \"$($_.Keys)\" ; Value = \"$($_.values)\" -replace \" \",\"`n\"} }|
Select-Object Name, Value |
Export-Csv -Path D:\Test.csv -Delimiter \";\" -NoTypeInformation -Encoding UTF8
Invoke-Item D:\Test.csv
[/code:1]
Le résultat :
[code:1]
\"Name\";\"Value\"
\"2\";\"192.168.40.23
5500
SWE13\"
\"1\";\"192.168.40.22
5500
SWE12\"
\"0\";\"192.168.40.21
5500
SWE11\"
[/code:1]
Le contenu de $tlConcatTab :
[code:1]
PS > $tlConcatTab
Name Value
----
2 {192.168.40.23, 5500, SWE13}
1 {192.168.40.22, 5500, SWE12}
0 {192.168.40.21, 5500, SWE11}
[/code:1]
Cela ne fonctionne pas pour toi parce que l'objet contenu dans la propriété de $tlConcatTab n'est pas au même format que l'objet que j'ai créé pour mes tests et exemples.
Il faut que tu adaptes le code en fonction de ce que contient $tlConcatTab.
A priori, ton précédent poste 'Le contenu de $tlConcatTab' ne me permet pas de t'aider plus en avant. Je ne sais pas comment tu l'as obtenu ... Il manque une ou plusieurs informations.
@ +
Matthew BETTON<br><br>Message édité par: Matthew BETTON, à: 24/08/13 14:13
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.043 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Exporter un tableau a plusieurs dimensions en CSV