Question
[Résolu] XML attributs à fusionner
- arnold
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 57
- Remerciements reçus 0
il y a 8 ans 6 mois #19338
par arnold
[Résolu] XML attributs à fusionner a été créé par arnold
bonjour,
Svp,
Comment lier les 2 attributs ?
[code:1]$Version = $liste.selectNodes(\"/list/groupe/position[@type=\"\"Version\"\"]\"«»)
$General = $liste.selectNodes(\"/list/groupe/position[@type=\"\"General\"\"]\"«»)
cls
$liste = [xml]@\"
<list>
<groupe>
<position type=\"General\">
<CompleteName>folder-1</CompleteName>
<dateYY>2014</dateYY>
<dateMM>jaenner</dateMM>
<dateDD>mittwoch</dateDD>
<Overall_mode>cbr</Overall_mode>
<Duration>00:1:27</Duration>
<Overall_rate>96.0Kbps</Overall_rate>
</position>
<position type=\"Version\">
<Channel>channel2</Channel>
<CodecID>55</CodecID>
<Duration>00:1:27</Duration>
<Compression>Lossy</Compression>
<StreamSize>96.0Kbps</StreamSize>
</position>
</groupe>
<groupe>
<position type=\"General\">
<CompleteName>folder-2</CompleteName>
<dateYY>2013</dateYY>
<dateMM>maerz</dateMM>
<dateDD>montag</dateDD>
<Overall_mode>cbr</Overall_mode>
<Duration>00:8:12</Duration>
<Overall_rate>96.0Kbps</Overall_rate>
</position>
<position type=\"Version\">
<Channel>channel1</Channel>
<CodecID>49</CodecID>
<Duration>00:8:12</Duration>
<Compression>Lossy</Compression>
<StreamSize>96.0Kbps</StreamSize>
</position>
</groupe>
</list>
\"@
$liste.list.selectNodes(\"/*/*/*\"«»)
$liste.list.selectNodes(\"*\"«»)
# attr General.CompleteName
# attr Version.CodecID
\"Nom: \"+ $_.CompleteName+\"; \"+$_.CodecID
[/code:1]
Merci pour votre aide.
Arnold
Message édité par: Arnaud, à: 30/03/15 11:15<br><br>Message édité par: Arnaud, à: 7/04/15 14:09
Svp,
Comment lier les 2 attributs ?
[code:1]$Version = $liste.selectNodes(\"/list/groupe/position[@type=\"\"Version\"\"]\"«»)
$General = $liste.selectNodes(\"/list/groupe/position[@type=\"\"General\"\"]\"«»)
cls
$liste = [xml]@\"
<list>
<groupe>
<position type=\"General\">
<CompleteName>folder-1</CompleteName>
<dateYY>2014</dateYY>
<dateMM>jaenner</dateMM>
<dateDD>mittwoch</dateDD>
<Overall_mode>cbr</Overall_mode>
<Duration>00:1:27</Duration>
<Overall_rate>96.0Kbps</Overall_rate>
</position>
<position type=\"Version\">
<Channel>channel2</Channel>
<CodecID>55</CodecID>
<Duration>00:1:27</Duration>
<Compression>Lossy</Compression>
<StreamSize>96.0Kbps</StreamSize>
</position>
</groupe>
<groupe>
<position type=\"General\">
<CompleteName>folder-2</CompleteName>
<dateYY>2013</dateYY>
<dateMM>maerz</dateMM>
<dateDD>montag</dateDD>
<Overall_mode>cbr</Overall_mode>
<Duration>00:8:12</Duration>
<Overall_rate>96.0Kbps</Overall_rate>
</position>
<position type=\"Version\">
<Channel>channel1</Channel>
<CodecID>49</CodecID>
<Duration>00:8:12</Duration>
<Compression>Lossy</Compression>
<StreamSize>96.0Kbps</StreamSize>
</position>
</groupe>
</list>
\"@
$liste.list.selectNodes(\"/*/*/*\"«»)
$liste.list.selectNodes(\"*\"«»)
# attr General.CompleteName
# attr Version.CodecID
\"Nom: \"+ $_.CompleteName+\"; \"+$_.CodecID
[/code:1]
Merci pour votre aide.
Arnold
Message édité par: Arnaud, à: 30/03/15 11:15<br><br>Message édité par: Arnaud, à: 7/04/15 14:09
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
-
- Hors Ligne
- Modérateur
-
il y a 8 ans 5 mois #19355
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 ou d'un conseil ?
Réponse de Arnaud Petitjean sur le sujet Re:xml attribut
Bonjour Arnold,
Que veux-tu dire exactement ?
Pourrais tu nous montrer le résultat que tu voudrais obtenir STP ?
Arnaud
Comment lier les 2 attributs ?
Que veux-tu dire exactement ?
Pourrais tu nous montrer le résultat que tu voudrais obtenir STP ?
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 ou d'un conseil ?
Connexion ou Créer un compte pour participer à la conversation.
- arnold
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 57
- Remerciements reçus 0
il y a 8 ans 5 mois #19361
par arnold
Réponse de arnold sur le sujet Re:xml attribut
Bonsoir Monsieur,
Merci pour Votre reponse!
J'ai une solution:
que penser vous?
Vous avez mieux que sa?
Arnold
=====================
Le dernier script:
=====================
[code:1]
$XJukeBox = [xml]@\"
<list>
<groupe>
<position type=\"General\">
<CompleteName>folder-1</CompleteName>
<dateYY>2014</dateYY>
<dateMM>jaenner</dateMM>
<dateDD>mittwoch</dateDD>
<Overall_mode>cbr</Overall_mode>
<Duration_String>00:1:27</Duration_String>
<Overall_rate>96.0Kbps</Overall_rate>
</position>
<position type=\"Version\">
<Channel>channel1</Channel>
<CodecID>55</CodecID>
<Duration_String>00:1:27</Duration_String>
<Compression>Lossy</Compression>
<StreamSize>96.0Kbps</StreamSize>
</position>
</groupe>
<groupe>
<position type=\"General\">
<CompleteName>folder-2</CompleteName>
<dateYY>2013</dateYY>
<dateMM>maerz</dateMM>
<dateDD>montag</dateDD>
<Overall_mode>cbr</Overall_mode>
<Duration_String>00:8:12</Duration_String>
<Overall_rate>96.0Kbps</Overall_rate>
</position>
<position type=\"Version\">
<Channel>channel2</Channel>
<CodecID>49</CodecID>
<Duration_String>00:8:12</Duration_String>
<Compression>Lossy</Compression>
<StreamSize>96.0Kbps</StreamSize>
</position>
</groupe>
<groupe>
<position type=\"General\">
<CompleteName>folder-3</CompleteName>
<dateYY>2013</dateYY>
<dateMM>maerz</dateMM>
<dateDD>montag</dateDD>
<Overall_mode>cbr</Overall_mode>
<Duration_String>00:8:12</Duration_String>
<Overall_rate>96.0Kbps</Overall_rate>
</position>
<position type=\"Version\">
<Channel>channel3</Channel>
<CodecID>49</CodecID>
<Duration_String>00:8:12</Duration_String>
<Compression>Lossy</Compression>
<StreamSize>96.0Kbps</StreamSize>
</position>
</groupe>
<groupe>
<position type=\"General\">
<CompleteName>folder-4</CompleteName>
<dateYY>2013</dateYY>
<dateMM>maerz</dateMM>
<dateDD>montag</dateDD>
<Overall_mode>cbr</Overall_mode>
<Duration_String>00:8:12</Duration_String>
<Overall_rate>96.0Kbps</Overall_rate>
</position>
<position type=\"Version\">
<Channel>channel4</Channel>
<CodecID>49</CodecID>
<Duration_String>00:8:12</Duration_String>
<Compression>Lossy</Compression>
<StreamSize>96.0Kbps</StreamSize>
</position>
</groupe>
</list>
\"@
[System.Xml.XmlDocument]$XJukeBox = new-object System.Xml.XmlDocument
$XJukeBox.Load(\"C:\......\JukeBox.xml\"
function Scan-xml
{param ([string]$Xstring)
$XJukeBox.Audio.File | ForEach-Object{
# $Xstring = @()
$_.track | ForEach-Object{
If($_.type -eq \"General\"«»)
{
$global:«»XCompleteName = $_.CompleteName
$Xstring = \"<dt>\"+$XCompleteName+\"</dt>\"
}ElseIf($_.type -eq \"Audio\"«»)
{
# Control Time
$global:«»xDuration_String = (new-timespan -start \"00:00:00\" -end $_.Duration_String)
# Convert to seconde
$Xtext = $global:«»xDuration_String
$XtextReformat = $Xtext -replace \",\",\".\"
$Xseconds = ([TimeSpan]::«»Parse($XtextReformat)).TotalSeconds
$Xstring += \" <dt>\" +$Xseconds+\"</dt>\"
}
}
$Xstring -join \"`t\"
} | Get-Random
}
Scan-xml
clear-variable X* -scope global -F[/code:1]<br><br>Message édité par: arnold, à: 31/03/15 00:36
Merci pour Votre reponse!
J'ai une solution:
que penser vous?
Vous avez mieux que sa?
Arnold
=====================
Le dernier script:
=====================
[code:1]
$XJukeBox = [xml]@\"
<list>
<groupe>
<position type=\"General\">
<CompleteName>folder-1</CompleteName>
<dateYY>2014</dateYY>
<dateMM>jaenner</dateMM>
<dateDD>mittwoch</dateDD>
<Overall_mode>cbr</Overall_mode>
<Duration_String>00:1:27</Duration_String>
<Overall_rate>96.0Kbps</Overall_rate>
</position>
<position type=\"Version\">
<Channel>channel1</Channel>
<CodecID>55</CodecID>
<Duration_String>00:1:27</Duration_String>
<Compression>Lossy</Compression>
<StreamSize>96.0Kbps</StreamSize>
</position>
</groupe>
<groupe>
<position type=\"General\">
<CompleteName>folder-2</CompleteName>
<dateYY>2013</dateYY>
<dateMM>maerz</dateMM>
<dateDD>montag</dateDD>
<Overall_mode>cbr</Overall_mode>
<Duration_String>00:8:12</Duration_String>
<Overall_rate>96.0Kbps</Overall_rate>
</position>
<position type=\"Version\">
<Channel>channel2</Channel>
<CodecID>49</CodecID>
<Duration_String>00:8:12</Duration_String>
<Compression>Lossy</Compression>
<StreamSize>96.0Kbps</StreamSize>
</position>
</groupe>
<groupe>
<position type=\"General\">
<CompleteName>folder-3</CompleteName>
<dateYY>2013</dateYY>
<dateMM>maerz</dateMM>
<dateDD>montag</dateDD>
<Overall_mode>cbr</Overall_mode>
<Duration_String>00:8:12</Duration_String>
<Overall_rate>96.0Kbps</Overall_rate>
</position>
<position type=\"Version\">
<Channel>channel3</Channel>
<CodecID>49</CodecID>
<Duration_String>00:8:12</Duration_String>
<Compression>Lossy</Compression>
<StreamSize>96.0Kbps</StreamSize>
</position>
</groupe>
<groupe>
<position type=\"General\">
<CompleteName>folder-4</CompleteName>
<dateYY>2013</dateYY>
<dateMM>maerz</dateMM>
<dateDD>montag</dateDD>
<Overall_mode>cbr</Overall_mode>
<Duration_String>00:8:12</Duration_String>
<Overall_rate>96.0Kbps</Overall_rate>
</position>
<position type=\"Version\">
<Channel>channel4</Channel>
<CodecID>49</CodecID>
<Duration_String>00:8:12</Duration_String>
<Compression>Lossy</Compression>
<StreamSize>96.0Kbps</StreamSize>
</position>
</groupe>
</list>
\"@
[System.Xml.XmlDocument]$XJukeBox = new-object System.Xml.XmlDocument
$XJukeBox.Load(\"C:\......\JukeBox.xml\"
function Scan-xml
{param ([string]$Xstring)
$XJukeBox.Audio.File | ForEach-Object{
# $Xstring = @()
$_.track | ForEach-Object{
If($_.type -eq \"General\"«»)
{
$global:«»XCompleteName = $_.CompleteName
$Xstring = \"<dt>\"+$XCompleteName+\"</dt>\"
}ElseIf($_.type -eq \"Audio\"«»)
{
# Control Time
$global:«»xDuration_String = (new-timespan -start \"00:00:00\" -end $_.Duration_String)
# Convert to seconde
$Xtext = $global:«»xDuration_String
$XtextReformat = $Xtext -replace \",\",\".\"
$Xseconds = ([TimeSpan]::«»Parse($XtextReformat)).TotalSeconds
$Xstring += \" <dt>\" +$Xseconds+\"</dt>\"
}
}
$Xstring -join \"`t\"
} | Get-Random
}
Scan-xml
clear-variable X* -scope global -F[/code:1]<br><br>Message édité par: arnold, à: 31/03/15 00:36
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
-
- Hors Ligne
- Modérateur
-
il y a 8 ans 5 mois #19367
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 ou d'un conseil ?
Réponse de Arnaud Petitjean sur le sujet Re:xml attribut
C'est difficile à dire la limite où tu ne nous a pas dit quel est l'objectif de ton script... 
Arnaud

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 ou d'un conseil ?
Connexion ou Créer un compte pour participer à la conversation.
- arnold
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 57
- Remerciements reçus 0
il y a 8 ans 5 mois #19388
par arnold
Réponse de arnold sur le sujet Re:xml attribut
Bonsoir Monsieur,
J'ai ne pas compris votre reponse..
Remarque, il fait un peut tard.
Arnold
J'ai ne pas compris votre reponse..
Remarque, il fait un peut tard.
Arnold
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.054 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- [Résolu] XML attributs à fusionner