Question Supprimer un retour à la ligne

Plus d'informations
il y a 11 ans 4 semaines #19571 par rocketter
Bonjour,

je manipule PowerShell depuis 2 semaines environ, dans un fichier je souhaite supprimer une chaine de caractères qui débute une ligne ; je parviens à supprimer la chaine de caractères mais je ne parviens pas à supprimer le retour à la ligne.

Voici mon code :
[code:1]
(get-content C:\test2\test.txt)|foreach-object {$_ -replace \"A\|\", \"`b\"}|set-content C:\test2\test.txt[/code:1]

Et voici le contenu de mon fichier avant modif :

ligne 1
A|blabla


Et après :

ligne 1
blabla


Mon but serait d'avoir :

ligne 1blabla


Merci d'avance de votre aide.

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

Plus d'informations
il y a 11 ans 4 semaines #19573 par xyz
Réponse de xyz sur le sujet Re:Supprimer un retour à la ligne
Salut,
cela dépend de la construction de la ligne, essaie ceci :
[code:1]
#Lit tout le fichier
#sinon dans le pipeline $_ est égal au contenu d'une seule ligne
$s=[IO.File]::ReadAllText('C:\test2\test.txt')

#cf. msdn.microsoft.com/fr-fr/library/h5181w5w.aspx#End
$s -replace '(\n|\r|\r\n)A\|', ''

#Visu des caractères
[byte[]][char[]]($s -replace '(\n|\r|\r\n)A\|', '')
[/code:1]

Tutoriels PowerShell

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

Plus d'informations
il y a 11 ans 4 semaines #19574 par rocketter
Salut Laurent,

merci de ta réponse, par contre c'est la première fois que je vois la syntaxe que tu as utilisé :

[IO.File]::ReadAllText('C:\test2\test.txt')

(syntaxe à utiliser pour se servir de la méthode ReadAllText dde la classe File du framework .Net ?)
ou

[byte[]][char[]]




Sinon ça ne fonctionne pas mais c'est bizarre car à l'IDE powershell, j'ai ceci :

ligne 1ligne2


108
105
103
110
101
32
49
108
105
103
110
101
50
13
10
13
10
ligne 1
A|ligne2

<br><br>Message édité par: rocketter, à: 27/04/15 16:11

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

Plus d'informations
il y a 11 ans 4 semaines #19575 par xyz
Réponse de xyz sur le sujet Re:Supprimer un retour à la ligne
rocketter écrit:

syntaxe à utiliser pour se servir de la méthode ReadAllText dde la classe File du framework .Net ?

C'est un appel d'une méthode statique.
rocketter écrit:

ou
[byte[]][char[]]

C'est une suite de transtypage (cast)

Communique nous un fichier de test.<br><br>Message édité par: Laurent Dardenne, à: 27/04/15 16:20

Tutoriels PowerShell

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

Plus d'informations
il y a 11 ans 4 semaines #19577 par rocketter
Voici par exemple le contenu d'nu fichier :

20150421164500^|MP|135F
A|~135~5110~4~C~67202|||M||||201504211646||


Moi je souhaiterais ceci :

20150421164500^|MP|135F~135~5110~4~C~67202|||M||||201504211646||

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

Plus d'informations
il y a 11 ans 4 semaines #19578 par xyz
Réponse de xyz sur le sujet Re:Supprimer un retour à la ligne
Joins un fichier stp.
J'ai testé la regex avec un fichier de test (UFT8), mais le tiens a peut-être un autre encodage...

Tutoriels PowerShell

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

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