Page 1 sur 1

Destruction de caractère !!!

Publié : mar. 10/févr./2004 19:46
par GiGnT3r0r
:D Bien le bonjours, bin di donc sa fais du bien de retrouver l'ancien forum, je commençais a désespérer !! :(

Mais je suis pas la pour raconter ma vie !!

J'ai un petit problème, j'essay de faire un progamme qui permet de séléctionner un fichier texte et de supprimer un caractère défini comme la lettre ' a ' ou un tiret etc.... 8O
Mais la je tourne en rond :mad: !!

Quelqu'un aurait il une solution ???? !!!!! ????? :?: :?: :?:
Merci a vous !! :D :D

Publié : mar. 10/févr./2004 19:59
par Anonyme2
Je ne sais pas si j'ai bien compris....


Moi je vois ça comme ceci.

Tu ouvre un fichier vide.
Tu lit chaque mot du fichier texte et tu analyse chaque mot.
Si le mot contient le caractère à supprimer, tu réécris le mot sans le caractère dans le nouveau fichier que tu as créé et bien sur tu copie aussi les mots qui ne doivent pas changer.

Une fois terminé, tu efface le fichier d'origine et tu renomme le nouveau fichier avec le nom du fichier effacé.

C'est ca ?

Publié : mer. 11/févr./2004 10:29
par GiGnT3r0r
Bin voila c sa, mais au lieu de recopier le mot sans le caractère demandé on pourrait peut etre déplacer le curseur et si il y un caractere qui doit etre supprimer, il le supprime simplement !! mais je croit pas que c possible !! J'y comprend rien lol :?

Publié : mer. 11/févr./2004 12:23
par Chris
Salut :)

Teste ça, ca devrait aller:

Code : Tout sélectionner

Char$ = "a"

If OpenFile(0,"README.txt")                 ; ( piquer une copie dans ton dossier "PureBasic")
  Repeat
    Pos1 = Loc()                            ; Récupère la position du pointeur 
    tmp$ = ReadString()                     ; lit la ligne
    Pos2 = Loc()                            ; position après lecture
    Temp$ = RemoveString(tmp$,Char$,0)      ; vire les caractères
    L = Len(Temp$) :  NbCar = Len(tmp$)- L  ; Nbre d'espaces à rajouter
    Temp$ + Space(NbCar)                    ; rajoute des espaces à la fin
    FileSeek(Pos1)                          ; revient à la position de départ
    WriteString(Temp$)                      ; réécrit le texte
    FileSeek(Pos2)                          ; retourne à la seconde position
  Until Eof(0)                              ; et ainsi de suite, jusqu'à la fin
  CloseFile(0)                              ; on ferme.....
EndIf
Le fichier README.txt est celui qui est dans le dossier "PureBasic"

Chris :)

Publié : mer. 11/févr./2004 15:38
par Invité
Le code de Chris est parfait

Juste pour intérêt!

Code : Tout sélectionner

If OpenFile(0,"README.txt")
  Repeat  
    tmp$ = ReadString()                    
    chaine=chaine+tmp$+Chr(13) + Chr(10)
  Until Eof(0)
    FileSeek(0)
    chaine = RemoveString(chaine,Char$,0)
    WriteString(chaine)
    CloseFile(0)           
EndIf 
Nicolas

Publié : mer. 11/févr./2004 15:58
par Invité
Le code précédent ne va pas:

Code : Tout sélectionner

 Char$ = "a" 

If OpenFile(0,"Copie de ReBar.c")
  Repeat  
    tmp$ = ReadString()                    
    chaine.s=chaine+tmp$+Chr(13) + Chr(10)
  Until Eof(0)
  CloseFile(0)    
EndIf   
If CreateFile(0,"Copie de ReBar.c")
    chaine = RemoveString(chaine,Char$,0)
    WriteString(chaine)
    CloseFile(0)           
EndIf
Nicolas

Publié : mer. 11/févr./2004 17:43
par Invité
C'est très bon :wink: , j'ai vraiment rien a dire :), merci encore pour votre aide à tous !! :D



:idea: