Question

J'ai un scénario très similaire à celui décrit dans ce message . Il décrit comment charger le contenu d'un fichier qui contient des propriétés et des éléments, faire en sorte qu'ils sont résolus dans le cadre du processus. Je fais la même chose, sauf à écrire le contenu de suite à un autre fichier texte (généralement de fichier .ini).

En bref je commencerais par l'importation d'un projet / PropertyGroup qui contient ce texte:

  

; -----------

     

[rubrique]

     

SETTING1 = $ (FirstValue)

     

Setting2 = $ (SecondValue)

     

= Setting3 liste; de; valeurs; délimitée; par; virgules

     

REGLAGE4 = bla bla bla

     

; -----------

& je l'espère écrire un nouveau loin fichier .ini contenant les éléments suivants:

  

; -----------

     

[rubrique]

     

SETTING1 = valeur réglée par msbuild

     

Réglage 2 = une autre valeur réglée par msbuild

     

= Setting3 liste; de; valeurs; délimitée; par; virgules

     

REGLAGE4 = bla bla bla

     

; -----------

Le seul problème est que certains fichiers contiennent des points-virgules. Je peux vivre sans commentaires, mais ils sont également utilisés dans le cadre des valeurs par exemple dans les listes. Ceci est le résultat de l'utilisation de la tâche WriteLinesToFile. Les points-virgules sont traités comme des caractères d'échappement et résultat dans de nouvelles lignes, de sorte que la valeur de « Setting3 » dans l'exemple ci-dessus seraient répartis sur 6 lignes.

Y at-il un moyen de contourner cela sans mettre en œuvre ma propre tâche?

Merci d'avance pour l'aide!

Pas de solution correcte

Autres conseils

J'ai eu une situation similaire, mais en utilisant simplement un texte statique contenant des points-virgules dans la tâche WriteLinesToFile. Je suis arrivé à travailler en utilisant% 3B comme un caractère d'échappement pour point-virgule.

Si vous pouvez obtenir les points-virgules pour afficher correctement la valeur en mémoire (utilisez la tâche Message à vérifier), vous aurez juste besoin de les remplacer par% 3B pour écrire le fichier sur.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top