J'ai un léger problème de lecture de fichier de properties.
Mon fichier contient les valeurs suivantes :
Code :
- truc = machin
- bidule = pouet
|
(D'après mes tests, je n'ai pas l'impression que les espaces autour du "=" changent grand chose)
Je le lis en PowerShell V2.0 de la manière suivante :
Code :
- $ConfigProps = (Get-Content ./properties/config.properties) | convertfrom-stringdata
|
La variable $ConfigProps m'affiche bien les lignes suivantes :
Citation :
Name Value ---- ----- truc machin
bidule pouet
|
Mon problème est la récupération liée par exemple à "truc". J'ai essayé les syntaxes suivantes (dont certaines doivent marcher, d'après ce que je lis sur le net) :
Code :
- $ConfigProps.'truc'
- $ConfigProps."truc"
- $ConfigProps["truc"]
- $ConfigProps[truc]
- $ConfigProps.truc
|
Et, chose étrange, j'arrive à récupérer une ligne avec
Avec "5" qui est le numéro de lignes (-1) dans mon fichier properties d'origine et pas le nombre de valeurs dans ConfigProps ! Donc si j'ai des lignes de commentaires dans mon fichier, cela perturbe un peu tout.
Ce n'est clairement pas la solution, puisque je souhaite récupérer la valeur à partir du nom et pas à partir du numéro de ligne, mais de plus, en essayant $ConfigProps[5].Name ou .Value ne fonctionne toujours pas.
En résumé : comment faire pour afficher la valeur à partir du nom ? La méthode prise en premier lieu est-elle la bonne, ou faut-il que je passe par quelque chose de plus verbeux (mais qui fonctionnerait) ?
Message édité par CerfPyvert le 16-04-2014 à 11:41:00