Suppression d'un saut à la ligne généré automatiquement par SQL Server

Omerdude Messages postés 40 Date d'inscription samedi 2 juillet 2005 Statut Membre Dernière intervention 17 août 2006 - 16 août 2006 à 16:24
Omerdude Messages postés 40 Date d'inscription samedi 2 juillet 2005 Statut Membre Dernière intervention 17 août 2006 - 17 août 2006 à 11:50
Bonjour à tous,



Je bosse actuellement sur SQL Server 2000, à qui je fais générer un
fichier XML m'indiquant les données renvoyées. Le problème est que cet
@$#!§ de programme me fait un saut de ligne tous les 2033 caractères,
ce qui m'enuie beaucoup vu le nombre d'entrées de la base
(potentiellement + de 1 million...). Je me vois pas trop le faire à la
main à chaque fois! En outre, je voudrais bien aussi pouvoir inclure
les entête et pied de page caractéristiques au XML, et bien sur non
gérés par SQL Server.



Bon, tout ça c'est bien joli, mais je suis un complet noob en VB (que
l'on m'a conseillé pour résoudre ce problème) et j'ai pas la moindre
idée quand à la difficulté du truc, ni la manière de le faire.
Quelqu'un peut-il me donner quelques pistes svp, histoire que ça me
prenne pas 15 jours?



Merci d'avance,


Djizeus

5 réponses

cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
17 août 2006 à 00:22
Salut,


Je voudrais bien t'aider, mais je ne sais comment tu procèdes ...

Est-ce bien à chaque 2033 caractères ?


Je ne sais pas si c'est possible dans ton cas, mais tu pourrais faire
un Replace(...) des caractères de sauts de ligne en les remplaçant par
un caractère vide au fur et à mesure que tu crées ton XML

MPi
0
Omerdude Messages postés 40 Date d'inscription samedi 2 juillet 2005 Statut Membre Dernière intervention 17 août 2006
17 août 2006 à 09:25
Salut,


Donc oui, c'est bien tous les 2033 caractères exactement. Sais-tu si
y'a des docs qui permettent de développer ce dont tu me parles, genre
tuto? C'est pas par fainéantise, hein, c'est juste que j'y connais rien
de rien! En tout cas merci de la piste, je vais la suivre de ce pas


Djizeus
0
Omerdude Messages postés 40 Date d'inscription samedi 2 juillet 2005 Statut Membre Dernière intervention 17 août 2006
17 août 2006 à 10:24
Bon ben j'ai trouvé des infos sur Replace, et j'ai a peu près compris
comment ça marchait. En plus, il existe des sources sur ce site super
bien faites (merci les gars ) pour
simplifier au maximum cet apprentissage express. Cependant, un problème
demeure: replace est suuuper pratique qd tu veux virer un élément de
texte, en tant que chaine de caractère, mais comment faire la même
chose avec un saut de ligne? Autrement dit, y'a t'il un code (genre
ANSI) pour représenter le saut de ligne, et sinon y'a pas un moyen de
faire autrement qu'avec un replace?


Merci encore...
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
17 août 2006 à 11:40
Salut,

Un saut de ligne est en général un groupement de 2 caractères.

Chr(13) ou vbCr - retour de chariot

Chr(10) ou vbLf - saut de ligne


Il te reste à faire des tests pour définir exactement le ou les types
de caractères qui causent ce saut de ligne dans ton appli. Peut-être
est-ce un autre caractère mal interprété (?)


MaChaine = Replace(MaChaine, Chr(13), "")

MaChaine = Replace(MaChaine, Chr(10), "")
ou si tu as vraiment les 2 caractères

MaChaine = Replace(MaChaine, vbCrLf, "")


Ensuite tu traîtes la chaîne comme tu faisais

MPi
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Omerdude Messages postés 40 Date d'inscription samedi 2 juillet 2005 Statut Membre Dernière intervention 17 août 2006
17 août 2006 à 11:50
Okay franchement merci, je vais essayer ça tout de suite.

Pour info, les sauts de ligne sont dus à SQL Server 2000 qui fait un
classement des données par colonne. Du coup, il contraint les données à
se découper selon une largeur prédéfinie... 2033 caractères...


Je te tiendrais au courant,

Merci du couseil
0
Rejoignez-nous