|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : novembre 2010 Messages : 7 ![]() |
Bonjour,
je veux transférer le contenu d'un champ vers un fichier texte, ce champ est une longue variable caractère de longueur $2000 du type : (year=2001 and month=01 and day=01) or (year=2001 and month=01 and day=02) ...... jusqu'a 31 fois pour les mois de 31 jours, quand je cree un fichier txt à partir de ce champ, les lignes sont limités à 262, et donc les retours à la ligne sont fait un peu n'importe comment: au milieu d'un YEAR ou un OR et donc je me retrouve avec un YE AR ou O R (j'ai pas essayé avec un lrecl mais ça pas ça le problème: je veux pas me retrouver avec des lignes très allongées), qu'est ce qu'on peut me conseiller pour avoir un retour intelligent à la ligne, si ça se peut se faire sous une proc je prends aussi Merci d'avance un petit code pour comprendre: dans mon cas retour à la ligne en milieu d'un MONTH Code :
|
||
|
|
00
|
|
|
#2 | ||
|
Membre éprouvé
![]() Rémi Bousquetresponsable adjoint service stat Inscription : mars 2009 Messages : 334 ![]() |
J'ai un souci avec ton problème, c'est que quand je le teste chez moi, je n'ai pas de problème !
D'une part, la log indique bien que tout est exporté sur une seule ligne : Code :
D'autre part, quand j'ouvre le fichier, tout est bien sur une ligne. Le problème vient peut être de l'application avec laquelle tu ouvres le fichier txt ? Moi je l'ouvre avec le "bloc note" de Windows --> Avec quelle application ouvres tu ton fichier txt ? |
||
|
|
00
|
|
|
#3 | ||||
|
Membre éprouvé
![]() Rémi Bousquetresponsable adjoint service stat Inscription : mars 2009 Messages : 334 ![]() |
Voilà quand même une piste de solution
Cela consiste à redécomposer char en 31 variables char_1 à char_31, et à les exporter l'une après l'autre. Pour cela, on part du principe que la variable char a une structure vraiment figée : les longueurs des champs sont toujours les mêmes. Avec le fait que la longueur augmente de +1 quand l'on passe du 9ième au 10ième jour. L'étape data est sûrement optimisable, j'ai rajouté une ou deux rustines pour gérer des anos (notamment loop=32) J'ai aussi géré le cas des mois de moins de 31 jours. POur le test, j'ai fait un putlog pour visualiser les résultats dans la log : il te suffit normalement de remettre le put classique et le file. Le code : Code :
Code :
|
||||
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : novembre 2010 Messages : 7 ![]() |
j'ai exactement le même message sur la log, y'a donc un lien avec l'application avec laquelle j'ouvre le fichier:
bloc notes de windows (vista) => affichage sur 2 ligne avec un mot splitté et un espace introduit avec le retour à la ligne. notepad++ et similaires : affichage sur 1 ligne. wordpad : des lignes raccourcies ( 70/74 caracteres) ! donc plusieurs lignes et une bonne gestion des retours à la ligne ( pas de split ...). merci pour le code, on évite ce problème de lignes allongées et c'est plus présentable. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com