Question
[Résolu] manipulation de fichiers
- PULVERAIL
- Auteur du sujet
- Hors Ligne
- Membre junior
-
- Messages : 36
- Remerciements reçus 0
j'ai un fichier de la forme suivante :
2121 39.969090 128.448059 8974.193153 -0.041179
2122 39.923744 128.480576 8974.193165 -0.022682
2123 39.878387 128.513046 8974.193176 0.009471
2124 39.833019 128.545471 8974.193188 -0.044761
2125 39.787640 128.577850 8974.193199 -0.109171
2126 39.742249 128.610168 8974.193211 -0.110159
2127 39.696850 128.642456 8974.193223 -0.057679
2128 39.651428 128.674683 8974.193234 -0.092640
2129 39.606003 128.706879 8974.193246 -0.118871
2130 39.560562 128.739014 8974.193257 -0.120543
2131 39.515114 128.771103 8974.193269 -0.077248
2132 39.469650 128.803146 8974.193280 -0.116973
2133 39.424175 128.835144 8974.193292 -0.104093
2134 39.378689 128.867081 8974.193304 -0.146372
2135 39.333191 128.898987 8974.193315 -0.098640
...
qui comporte 513655 lignes! Le but de ma manipulation est de ne garder que les trois colonnes du milieu tout en inversant les deux premières colonnes. En gros, je dois obtenir un fichier comme celui-ci :
128.448059 39.969090 8974.193153
128.480576 39.923744 8974.193165
128.513046 39.878387 8974.193176
128.545471 39.833019 8974.193188
128.577850 39.787640 8974.193199
128.610168 39.742249 8974.193211
128.642456 39.696850 8974.193223
128.674683 39.651428 8974.193234
128.706879 39.606003 8974.193246
128.739014 39.560562 8974.193257
128.771103 39.515114 8974.193269
128.803146 39.469650 8974.193280
128.835144 39.424175 8974.193292
128.867081 39.378689 8974.193304
128.898987 39.333191 8974.193315
...
Voici le script que j'utilise :
[code:1]foreach ($j in $content_first_file) {
$k = $j.split(' ')
$k[2] + \" \" + $k[1] + \" \" + $k[3] >> $second_file
}[/code:1]
Alors je sais que ce n'est pas du tout la bonne solution, mais je n'arrive pas à trouver mieux... :-/ Un petit peu d'aide serait la bienvenue.
Au passage, avec mon script, j'ai une erreur qui se dégage, comme quoi le processus ne peut pas accéder à $second_file parce qu'il est utilisé par un autre processus...
Merci.<br><br>Message édité par: skeleton18, à: 11/08/09 15:34
Connexion ou Créer un compte pour participer à la conversation.
- Gabriel
-
- Hors Ligne
- Membre elite
-
- Messages : 248
- Remerciements reçus 1
Au passage, avec mon script, j'ai une erreur qui se dégage, comme quoi le processus ne peut pas accéder à $second_file parce qu'il est utilisé par un autre processus...
moi j'ai un truc comme ca
[code:1] foreach ($j in $content_first_file) {
$k = $j.split(' ')
$h = $k[2] + \" \" + $k[1] + \" \" + $k[3]
$h | out-file -append $second_file
}[/code:1]
ca marche plutot bien meme si c'est pas tres \"fin\"...
Connexion ou Créer un compte pour participer à la conversation.
- PULVERAIL
- Auteur du sujet
- Hors Ligne
- Membre junior
-
- Messages : 36
- Remerciements reçus 0
ca marche plutot bien meme si c'est pas tres \"fin\"...
Moi ça ne marche pas du tout... Enfin... Ca marche pour les 72118 premières lignes et après ça me sort encore la même erreur comme quoi je ne peux écrire dans le fichier parce qu'un autre processus est en train de l'utiliser...
Connexion ou Créer un compte pour participer à la conversation.
- Gabriel
-
- Hors Ligne
- Membre elite
-
- Messages : 248
- Remerciements reçus 1
et effectivement il me dit (mais bien avant les 72.000 lignes
[code:1]Le processus ne peut pas accéder au fichier 'C:\test_result.txt', car il est en cours d'utilisation par un autre proces
sus.
At C:\test.ps1:9 char:41
+ $k[2] + \" \" + $k[1] + \" \" + $k[3] >> <<<< $second_file
+ CategoryInfo : OpenError: (:«») [], IOException
+ FullyQualifiedErrorId : FileOpenFailure[/code:1]
la surprise c'est qu'il continue de parser...et qu'il finit par le faire en entier
j'avais un fichier de 125897 lignes avec 8 colonnes j'ai un fichier parsé de 125897 lignes avec 3 colonnes comme ton exemple.
Connexion ou Créer un compte pour participer à la conversation.
- PULVERAIL
- Auteur du sujet
- Hors Ligne
- Membre junior
-
- Messages : 36
- Remerciements reçus 0
Mais est ce que tes 3 colonnes correspondent aux données de ton fichier principal??
C'est quand même bizarre qu'il sorte une erreur et qu'il parcourt le fichier entièrement...
Connexion ou Créer un compte pour participer à la conversation.
- Gabriel
-
- Hors Ligne
- Membre elite
-
- Messages : 248
- Remerciements reçus 1
et pis histoire de bien foutre la grouille
j'ai relancer le meme script pour generer le meme fichier ben plus de message d'erreur...
Connexion ou Créer un compte pour participer à la conversation.
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- [Résolu] manipulation de fichiers