Bonjour,
J'essai de creer un script de duplication d'un base. Pour ça je génère un
ficher texte contenant tous les CREATE TABLE nécessaires.
J'utilise le code suivant:
POUR x = 1 a y
SQLExec("show create table " + NOMFIC[X],"ReqS")
SI SQLFetch("ReqS") = 0 ALORS
lCond = Remplace(SQLLitCol("ReqS",2),Caract(9)," ")
// lcond = SQLLitCol("ReqS",2)
fEcritLigne(lNumFic,lCond)
FIN
SQLFerme("ReqS")
FIN
Ce code fonctionne mais dans le fichier texte j'ai des caractères spéciaux
( petits rectangles ) que je n'arrive pas a enlever. A quoi correspondent
ces caractères ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
I.G.LOG
Trouvé: il s'agit de LF (caract(10) Donc avec
Remplace(SQLLitCol("ReqS",2),Caract(10)," "+RC)
le problème est résolu.
"I.G.LOG" a écrit dans le message de news: 4ae1d04b$0$930$
Bonjour, J'essai de creer un script de duplication d'un base. Pour ça je génère un ficher texte contenant tous les CREATE TABLE nécessaires. J'utilise le code suivant:
POUR x = 1 a y SQLExec("show create table " + NOMFIC[X],"ReqS") SI SQLFetch("ReqS") = 0 ALORS lCond = Remplace(SQLLitCol("ReqS",2),Caract(9)," ") // lcond = SQLLitCol("ReqS",2) fEcritLigne(lNumFic,lCond) FIN SQLFerme("ReqS") FIN
Ce code fonctionne mais dans le fichier texte j'ai des caractères spéciaux ( petits rectangles ) que je n'arrive pas a enlever. A quoi correspondent ces caractères ?
Merci
Trouvé: il s'agit de LF (caract(10)
Donc avec
Remplace(SQLLitCol("ReqS",2),Caract(10)," "+RC)
le problème est résolu.
"I.G.LOG" <iglog@free.fr> a écrit dans le message de news:
4ae1d04b$0$930$ba4acef3@news.orange.fr...
Bonjour,
J'essai de creer un script de duplication d'un base. Pour ça je génère un
ficher texte contenant tous les CREATE TABLE nécessaires.
J'utilise le code suivant:
POUR x = 1 a y
SQLExec("show create table " + NOMFIC[X],"ReqS")
SI SQLFetch("ReqS") = 0 ALORS
lCond = Remplace(SQLLitCol("ReqS",2),Caract(9)," ")
// lcond = SQLLitCol("ReqS",2)
fEcritLigne(lNumFic,lCond)
FIN
SQLFerme("ReqS")
FIN
Ce code fonctionne mais dans le fichier texte j'ai des caractères spéciaux
( petits rectangles ) que je n'arrive pas a enlever. A quoi correspondent
ces caractères ?
"I.G.LOG" a écrit dans le message de news: 4ae1d04b$0$930$
Bonjour, J'essai de creer un script de duplication d'un base. Pour ça je génère un ficher texte contenant tous les CREATE TABLE nécessaires. J'utilise le code suivant:
POUR x = 1 a y SQLExec("show create table " + NOMFIC[X],"ReqS") SI SQLFetch("ReqS") = 0 ALORS lCond = Remplace(SQLLitCol("ReqS",2),Caract(9)," ") // lcond = SQLLitCol("ReqS",2) fEcritLigne(lNumFic,lCond) FIN SQLFerme("ReqS") FIN
Ce code fonctionne mais dans le fichier texte j'ai des caractères spéciaux ( petits rectangles ) que je n'arrive pas a enlever. A quoi correspondent ces caractères ?
Merci
Goof
Comme dit précédemment, c'est le caractére 'LF' (line feed) l'explication: Les programmes issues du monde unix on l'habitude de signaler les fins de lignes uniquement par 'LF'. Alors que les programmes DOS/Windows utilisent 'CR' ( Carriage Return) et 'LF' pour signaler la fin de ligne. Noté 'CRLF' normalement, en C/C++/Java/PHP/... il est noté "rn" en windev il est noté 'RC'
Et tout ça vient de la .... machine a écrire mécanique. Elles avaient une touche pour passer a la ligne. (LF) Et éventuellement une autre pour faire le retour en début de ligne (CR), quand le retour en début de ligne n'était pas manuel.
A++ Goof
PS : je sais la solution a été donné, mais j'aime bien expliquer le pourquoi aussi car la raison est utile au moins autant que la solution.
I.G.LOG a écrit :
Bonjour, J'essai de creer un script de duplication d'un base. Pour ça je génère un ficher texte contenant tous les CREATE TABLE nécessaires. J'utilise le code suivant:
POUR x = 1 a y SQLExec("show create table " + NOMFIC[X],"ReqS") SI SQLFetch("ReqS") = 0 ALORS lCond = Remplace(SQLLitCol("ReqS",2),Caract(9)," ") // lcond = SQLLitCol("ReqS",2) fEcritLigne(lNumFic,lCond) FIN SQLFerme("ReqS") FIN
Ce code fonctionne mais dans le fichier texte j'ai des caractères spéciaux ( petits rectangles ) que je n'arrive pas a enlever. A quoi correspondent ces caractères ?
Merci
Comme dit précédemment, c'est le caractére 'LF' (line feed)
l'explication:
Les programmes issues du monde unix on l'habitude de signaler les fins
de lignes uniquement par 'LF'.
Alors que les programmes DOS/Windows utilisent 'CR' ( Carriage Return)
et 'LF' pour signaler la fin de ligne.
Noté 'CRLF' normalement,
en C/C++/Java/PHP/... il est noté "rn"
en windev il est noté 'RC'
Et tout ça vient de la .... machine a écrire mécanique.
Elles avaient une touche pour passer a la ligne. (LF)
Et éventuellement une autre pour faire le retour en début de ligne (CR),
quand le retour en début de ligne n'était pas manuel.
A++
Goof
PS : je sais la solution a été donné, mais j'aime bien expliquer le
pourquoi aussi car la raison est utile au moins autant que la solution.
I.G.LOG a écrit :
Bonjour,
J'essai de creer un script de duplication d'un base. Pour ça je génère un
ficher texte contenant tous les CREATE TABLE nécessaires.
J'utilise le code suivant:
POUR x = 1 a y
SQLExec("show create table " + NOMFIC[X],"ReqS")
SI SQLFetch("ReqS") = 0 ALORS
lCond = Remplace(SQLLitCol("ReqS",2),Caract(9)," ")
// lcond = SQLLitCol("ReqS",2)
fEcritLigne(lNumFic,lCond)
FIN
SQLFerme("ReqS")
FIN
Ce code fonctionne mais dans le fichier texte j'ai des caractères spéciaux
( petits rectangles ) que je n'arrive pas a enlever. A quoi correspondent
ces caractères ?
Comme dit précédemment, c'est le caractére 'LF' (line feed) l'explication: Les programmes issues du monde unix on l'habitude de signaler les fins de lignes uniquement par 'LF'. Alors que les programmes DOS/Windows utilisent 'CR' ( Carriage Return) et 'LF' pour signaler la fin de ligne. Noté 'CRLF' normalement, en C/C++/Java/PHP/... il est noté "rn" en windev il est noté 'RC'
Et tout ça vient de la .... machine a écrire mécanique. Elles avaient une touche pour passer a la ligne. (LF) Et éventuellement une autre pour faire le retour en début de ligne (CR), quand le retour en début de ligne n'était pas manuel.
A++ Goof
PS : je sais la solution a été donné, mais j'aime bien expliquer le pourquoi aussi car la raison est utile au moins autant que la solution.
I.G.LOG a écrit :
Bonjour, J'essai de creer un script de duplication d'un base. Pour ça je génère un ficher texte contenant tous les CREATE TABLE nécessaires. J'utilise le code suivant:
POUR x = 1 a y SQLExec("show create table " + NOMFIC[X],"ReqS") SI SQLFetch("ReqS") = 0 ALORS lCond = Remplace(SQLLitCol("ReqS",2),Caract(9)," ") // lcond = SQLLitCol("ReqS",2) fEcritLigne(lNumFic,lCond) FIN SQLFerme("ReqS") FIN
Ce code fonctionne mais dans le fichier texte j'ai des caractères spéciaux ( petits rectangles ) que je n'arrive pas a enlever. A quoi correspondent ces caractères ?
Merci
Eric Demeester
dans (in) fr.comp.developpement.agl.windev, Goof ecrivait (wrote) :
Bonjour,
Les programmes issues du monde unix on l'habitude de signaler les fins de lignes uniquement par 'LF'. Alors que les programmes DOS/Windows utilisent 'CR' ( Carriage Return) et 'LF' pour signaler la fin de ligne.
Pour être tout à fait complet, les fins de lignes sous MacOs sont signalées par <CR>.
-- Eric
dans (in) fr.comp.developpement.agl.windev, Goof <goof@altern.org>
ecrivait (wrote) :
Bonjour,
Les programmes issues du monde unix on l'habitude de signaler les fins
de lignes uniquement par 'LF'.
Alors que les programmes DOS/Windows utilisent 'CR' ( Carriage Return)
et 'LF' pour signaler la fin de ligne.
Pour être tout à fait complet, les fins de lignes sous MacOs sont
signalées par <CR>.
dans (in) fr.comp.developpement.agl.windev, Goof ecrivait (wrote) :
Bonjour,
Les programmes issues du monde unix on l'habitude de signaler les fins de lignes uniquement par 'LF'. Alors que les programmes DOS/Windows utilisent 'CR' ( Carriage Return) et 'LF' pour signaler la fin de ligne.
Pour être tout à fait complet, les fins de lignes sous MacOs sont signalées par <CR>.
-- Eric
Goof
merci du complément, je ne connaissais pas personnellement le cas d'Apple.
Eric Demeester a écrit :
dans (in) fr.comp.developpement.agl.windev, Goof ecrivait (wrote) :
Bonjour,
Les programmes issues du monde unix on l'habitude de signaler les fins de lignes uniquement par 'LF'. Alors que les programmes DOS/Windows utilisent 'CR' ( Carriage Return) et 'LF' pour signaler la fin de ligne.
Pour être tout à fait complet, les fins de lignes sous MacOs sont signalées par <CR>.
merci du complément, je ne connaissais pas personnellement le cas d'Apple.
Eric Demeester a écrit :
dans (in) fr.comp.developpement.agl.windev, Goof <goof@altern.org>
ecrivait (wrote) :
Bonjour,
Les programmes issues du monde unix on l'habitude de signaler les fins
de lignes uniquement par 'LF'.
Alors que les programmes DOS/Windows utilisent 'CR' ( Carriage Return)
et 'LF' pour signaler la fin de ligne.
Pour être tout à fait complet, les fins de lignes sous MacOs sont
signalées par <CR>.
merci du complément, je ne connaissais pas personnellement le cas d'Apple.
Eric Demeester a écrit :
dans (in) fr.comp.developpement.agl.windev, Goof ecrivait (wrote) :
Bonjour,
Les programmes issues du monde unix on l'habitude de signaler les fins de lignes uniquement par 'LF'. Alors que les programmes DOS/Windows utilisent 'CR' ( Carriage Return) et 'LF' pour signaler la fin de ligne.
Pour être tout à fait complet, les fins de lignes sous MacOs sont signalées par <CR>.