Question Fonction Replace / Retour Ligne

Plus d'informations
il y a 16 ans 10 mois #4576 par Jérémy
Bonjour à tous,

J'aimerai remplacer les retours à la ligne d'un fichier texte par une virgule.

Ce code me permettait de supprimer les espaces.

[code:1]Get-Content C:\test\fichier_final.txt |Foreach{$_.Replace(\" \", \"\"«»)}|Set-Content \"C:\test\fichier_final2.txt\"[/code:1]

je sais que le retour charriot est : `r
et l'ajout d'une ligne est : `n

Mais je ne trouve pas de solution pour remplacer ces retours à la ligne.

Merci de votre aide.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 16 ans 10 mois #4577 par Laurent Dardenne
Salut,
ici les retours chariot sont gérés par les cmdlets.
Ils ne font pas partie des chaînes de caractères, leur présence dans le fichier ne sert que de séparateur de lignes.
Tu peux faire qq chose comme ceci :
[code:1]
$Array=Get-Content \"C:\test\fichier_final.txt\"
$oldofs=$ofs
$ofs=\",\"
Set-Content \"C:\test\fichier_final2.txt\" \"$Array\"
$ofs=$oldofs
[/code:1]
Le pb potentiel étant la taille du fichier à gérer.

L'exemple suivant gére les CR :
[code:1]
$File=\"C:\test\fichier_final.txt\"
#récupère le contenu du fichier dans une seule chaîne
[String] $S = [io.file]::ReadAllText($File)
# remplace avec une regex
$S2=$s -replace \"\r\n\",\",\"
$s2
#ou en pipeline
[io.file]::ReadAllText($File)|% {$s -replace \"\r\n\",\",\"}|Set-Content \"C:\test\fichier_final2.txt\"
[/code:1]
Il manque à PS un cmdlet cherche/remplace :(<br><br>Message édité par: Laurent Dardenne, à: 24/04/09 12:27

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 16 ans 10 mois #4578 par Jérémy
Réponse de Jérémy sur le sujet Re:Fonction Replace / Retour Ligne
Merci à toi Laurent, tes solutions marchent !!

J'avais pas mal galéré pour trouver comment les remplacer et je me doutais bien que les retours chariot ne faisaient pas parti des caractères.

Ps : J'ai pas trouvé comment mettre la notification résolu au sujet. dsl pour les admins

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.077 secondes
Propulsé par Kunena