Question
Split fichier text
- Helfer Florian
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
- Messages : 11
- Remerciements reçus 0
Je vous explique mon petit soucis... J'ai un fichier qui n'est pas un .txt (le soucis n'étant pas là) qui contient des lignes avec un séparateur \":\". Mais, il y a toujours un mais sinon c'est pas marrant, certain contenu (chaîne entre les séparateurs) doivent être traduite comme du texte lorsque qu'ils sont contenu dans des '' (donc :'blablabla': = blablabla et :blablabla: = blablabla )
Attention les chaînes de texte n'ont pas forcément des ''!!
J'ai plusieurs chaînes qui contiennent une date et une heure et que les heures sont formatées ainsi \"09:45:00\" donc à la place d'avoir:
('2014/04/01 09:45:00') = 2014/04/01 09:45:00
j'ai:
('2014/04/01 09:45:00')= 2014/04/01
09
45
00
Voici un exemple du fichier à splité:
titre1:titre2:titre3
1000:terminé:2014/04/01 09:45:00
1001::2014/06/01 16:05:00
1002::2014/15/01 10:50:00
1003:terminé:2014/03/06 14:30:00
Je tiens à précisé que je ne peux pas modifier le formatage du fichier texte et que le fichier contient beaucoup plus de colonne que dans l'exemple!..
La suite serait aussi de créer un tableau comme cela:
titre1 titre2 titre3
1000 terminé 2014/04/01 09:45:00
1001 2014/06/01 16:05:00
1002 2014/15/01 10:50:00
1003 terminé 2014/03/06 14:30:00
Enfin à voir mais d'abord il faut que je règle ce soucis de formatage! ^^
En tout cas je vous remercie d'avance d'avoir pris la peine d'essayer de comprendre mon problème et a+!
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
- Messages : 6311
- Remerciements reçus 68
florian.helfer écrit:
Je confirmeMais, il y a toujours un mais sinon c'est pas marrant
florian.helfer écrit:
Il me semble qu'il ne couvre pas les cas que tu a énoncé.Voici un exemple du fichier à splité:
florian.helfer écrit:
Tu veux dire à la source ?Je tiens à précisé que je ne peux pas modifier le formatage du fichier texte
florian.helfer écrit:
Les autres colonnes sont-elles sur la même ligne ?et que le fichier contient beaucoup plus de colonne que dans l'exemple!
Le pb des guillemets porte sur tous les champs ?<br><br>Message édité par: Laurent Dardenne, à: 22/01/14 10:41
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Helfer Florian
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
- Messages : 11
- Remerciements reçus 0
Tu as raison il ne le couvre pas! Par contre il démontre que je suis bien étourdi!! ^^Laurent Dardenne écrit:
Il me semble qu'il ne couvre pas les cas que tu a énoncé.florian.helfer écrit:
Voici un exemple du fichier à splité:
Voila donc l'exemple CORRECT:
[code:1]titre1:titre2:titre3
1000:terminé:'2014/04/01 09:45:00'::
1001::'2014/06/01 16:05:00'::
1002::'2014/15/01 10:50:00'::
1003:terminé:'2014/03/06 14:30:00'::[/code:1]
Laurent Dardenne écrit:
Tu veux dire à la source ?florian.helfer écrit:
Je tiens à précisé que je ne peux pas modifier le formatage du fichier texte
Oui oui exactement!
Laurent Dardenne écrit:
Les autres colonnes sont-elles sur la même ligne ?
Le pb des guillemets porte sur tous les champs ?
Oui les autres colonnes sont sur la même ligne! Comme cela donc:
[code:1]
1000:terminé:'2014/04/01 09:45:00'::'blabla':::blablabla:'2014/04/01 09:45:00':56236:[/code:1]
Non justement, c'est pas régulier! Il y a des champs de texte avec les guillemets, d'autre sans...
Je regarde si je peux copier une ligne entière pour te montre...!<br><br>Message édité par: florian.helfer, à: 22/01/14 11:05
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
- Messages : 6311
- Remerciements reçus 68
Je ne retrouve pas le cas :Voila donc l'exemple CORRECT:
[code:1]
('2014/04/01 09:45:00')= 2014/04/01
09
45
00
[/code:1]
florian.helfer écrit:
Ce formatage peut évoluer rapidement? Ou il est figé pour qq temps ?Oui oui exactement!
florian.helfer écrit:
Joins un fichier.Je regarde si je peux copier une ligne entière
Ici, le pb avant de coder est d'avoir une analyse claire du traitement. Prend le temps de le formaliser et de construire un jeux de lignes de test.
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Helfer Florian
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
- Messages : 11
- Remerciements reçus 0
En utilisant le caractère \":\" pour le split les champs sont :
'2014/04/01
09
45
00'
Il faudrait juste un moyen d'interpréter les guillemets comme des zones de texte à ne pas splité..!
Voilà en lien un fichier comme il est exactement!
Je sais que j'aurais tendance à partir codé dans tous les sens sans réfléchir mais même en réfléchissant et en faisant des test sur des fichiers plus simple je n'y arrive pas...
La pièce jointe exemple-92adb87b61e48c2ddbd19d00fb33ce3d.txt est absente ou indisponible
Pièces jointes :
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
- Messages : 6311
- Remerciements reçus 68
Je sais que j'aurais tendance à partir codé dans tous les sens sans réfléchir mais même en réfléchissant et en faisant des test sur des fichiers plus simple je n'y arrive pas...
Le fichier est un csv, mal formaté.
Remplace le simple guillemet par des doubles.
Par contre la version 2 de Powershell plante sur ce formatage, mais pas la v3.
Si on ouvre le fichier dans Xl, puis qu'on l'enregistre e csv, on peut dés lors l'ouvrir avec la v2 de PS( reste un pb de page de code).
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Split fichier text