Communauté sur les Eggdrops - Community about Eggdrops
[Résolu]Fichier vide. - Printable Version

+- Communauté sur les Eggdrops - Community about Eggdrops (https://forum.eggdrop.fr)
+-- Forum: Eggdrop et TCL (https://forum.eggdrop.fr/forumdisplay.php?fid=8)
+--- Forum: Scripts TCL (https://forum.eggdrop.fr/forumdisplay.php?fid=4)
+--- Thread: [Résolu]Fichier vide. (/showthread.php?tid=1238)



[Résolu]Fichier vide. - aliasangelius - 18/09/2012

Bonjour,

J'ai un soucis sur un traitement de fichier.
Je m'explique..

Lors d'un ajout le texte et bien dedans.
Mais lorsque je veut ajouter une autre ligne il me supprime la ligne précédente ..

Je comprend pas comment résoudre ce soucis..

Voici les code concerner :


tcl
bind pub o ".+autorise" [namespace current]::+ajout
    proc +ajout { nick host hand chan arg } {
        set temp [lindex $arg 0]
        if {$temp == ""} {
            putserv "NOTICE $nick :Utilisation: .+autorise <pseudo>"
            putserv "NOTICE $nick :Exemple .+autorise alias_angelius"
            return 0
        }
        if {[lsearch -exact "x $::autorise::fichier(pseudo)" "$temp"]!="0"} {
            fwrite $::autorise::fichier(pseudo) $temp
            putserv "NOTICE $nick :\002$temp\002 \0034a été ajouté\0034"
            putserv "PRIVMSG $::autorise::auto(back) :\002$temp\002 \0034est ajouté au pseudos autorisé\0034"
            return 0
        }
        putserv "NOTICE $nick :\002Erreur:\002$temp\002 \0034est déjà autorisé\0034"
        return 0
    }
 
proc fread {fi} {
    set f [open $fi r]
    set t [gets $f]
    close $f
    return $t
    }
    proc fwrite {fi arg} {
        set f [open $fi w]
        puts $f $arg
        close $f
    }


Si quelqu'un à une idée..


RE: [Résolu]Fichier vide. - aliasangelius - 18/09/2012

C'est bon j'ai trouvé.

Fallait remplacer le w par le a.


tcl
proc fwrite {fi arg} {
        set f [open $fi a]
        puts $f $arg
        close $f
    }


w = réecrire Voila mon erreur x)