Page 1 sur 1

ouvrir un fichier text

Publié : lun. 06/févr./2006 21:43
par venom
bonsoir , voici mon probleme j'ai reussi a faire pour enregistrer un stringgadget en fichier *.txt.

mais je n'arrive pas a ouvrir ce fichier ou meme n'importe quel fichier *.txt.

donc je vous donne un exemple si quelquin sait comment faire car meme sur le forum je ne trouve pas. surement que je doit mal chercher car je ne doit pas etre le 1er a demander sa :oops: . desoler mais j'ai beau chercher pas moyen voici mon exemple.

Code : Tout sélectionner

Procedure saveas()
fichier$ = SaveFileRequester("Enregistrer sous", "document texte"+".txt","texte", 0) 
         If CreatePreferences(fichier$)
             Texte$ = GetGadgetText(1)
              PreferenceComment(Texte$)
               ClosePreferences()
         EndIf
EndProcedure

Procedure opentxt()
fichier$ = OpenFileRequester("ouvrir un texte", "", "fichier texte|*.txt", 0)
            If OpenPreferences(fichier$)
               SetGadgetText(1, fichier$)
               ClosePreferences()
            EndIf
EndProcedure

If OpenWindow(0, 0, 0, 600, 300, #PB_Window_SystemMenu | #PB_Window_ScreenCentered | #PB_Window_MinimizeGadget, "exemple")And CreateGadgetList(WindowID(0))
    StringGadget(1,5, 5, 590,260,"ecrir un texte ici puis sauvegarder. ensuite ouvrir ce meme texte ou un autre. pas moyen de le lire donc j'ai commencer un peut ma procedure opentxt() mais je trouve pas peut-tu m'aider stp ? je n'arrive pas a le relire ce texte ci. essaye enregistre et ouvre le tu verra. merci d'avance", #PB_String_MultiLine|#WS_VSCROLL|#ESB_DISABLE_LEFT|#ESB_DISABLE_RIGHT)
    ButtonGadget(2, 5, 270, 100, 20, "enregistrer sous")
    ButtonGadget(3, 115, 270, 100, 20, "ouvrir")
EndIf
  
  Repeat 
   Event = WaitWindowEvent() 
    If Event = #PB_EventGadget 
     Select EventGadgetID()

      Case 2
       saveas()
      
      Case 3
       opentxt()
       
     EndSelect
    EndIf
  Until Event = #PB_EventCloseWindow
voila en esperant que sa peut vous aider sur ce bonne soiree a tous le forum et a bientot.


@++
venom

Publié : lun. 06/févr./2006 21:54
par Droopy

Code : Tout sélectionner

Procedure saveas() 
  fichier$ = SaveFileRequester("Enregistrer sous", "document texte"+".txt","texte", 0) 
  If CreateFile(0,fichier$) 
    WriteString(GetGadgetText(1))
    CloseFile(0)
  EndIf 
EndProcedure 

Procedure opentxt() 
  fichier$ = OpenFileRequester("ouvrir un texte", "", "fichier texte|*.txt", 0) 
  If ReadFile(0,fichier$)
    Texte.s=Space(FileSize(fichier$))
    ReadData(@Texte,FileSize(fichier$))
    SetGadgetText(1, Texte) 
    CloseFile(0)
  EndIf 
EndProcedure 

If OpenWindow(0, 0, 0, 600, 300, #PB_Window_SystemMenu | #PB_Window_ScreenCentered | #PB_Window_MinimizeGadget, "exemple")And CreateGadgetList(WindowID(0)) 
  StringGadget(1,5, 5, 590,260,"ecrir un texte ici puis sauvegarder. ensuite ouvrir ce meme texte ou un autre. pas moyen de le lire donc j'ai commencer un peut ma procedure opentxt() mais je trouve pas peut-tu m'aider stp ? je n'arrive pas a le relire ce texte ci. essaye enregistre et ouvre le tu verra. merci d'avance", #PB_String_MultiLine|#WS_VSCROLL|#ESB_DISABLE_LEFT|#ESB_DISABLE_RIGHT) 
  ButtonGadget(2, 5, 270, 100, 20, "enregistrer sous") 
  ButtonGadget(3, 115, 270, 100, 20, "ouvrir") 
EndIf 
  
Repeat 
  Event = WaitWindowEvent() 
  If Event = #PB_EventGadget 
    Select EventGadgetID() 
      
      Case 2 
        saveas() 
        
      Case 3 
        opentxt() 
        
    EndSelect 
  EndIf 
Until Event = #PB_EventCloseWindow

Publié : lun. 06/févr./2006 21:56
par CameleonTH
J'ai pas compris pourquoi tu avait utiliser un OpenPreferences mais en tous cas elle est la ta faute.

Publié : lun. 06/févr./2006 22:13
par venom
:D exelent je vous remercie pour vos reponse rapide et tres satisfaisante.

par contre j'ai un autre petit soucis et oui encore. je ne comprend pas pourquoi quand je renome le fichier qui va etre sauvegarder sa ne le sauvegarde pas en fichier texte .

si vous ne comprenez pas bin se que je vien de dire c'est tres simple enregistrer un texte mais renomer le avant de l'enregistrer vous verrez bien. mais apart sa c'est niquel. encore merci et bonne nuit


@++

Publié : lun. 06/févr./2006 22:21
par CameleonTH
Tiens remplace la fonction SaveAs par

Code : Tout sélectionner

Procedure saveas()
  fichier$ = SaveFileRequester("Enregistrer sous", "document texte","texte|*.txt", 0)
  If CreateFile(0,fichier$+".txt")
    WriteString(GetGadgetText(1))
    CloseFile(0)
  EndIf
EndProcedure
et sa devrai etre bon.

Publié : mar. 07/févr./2006 18:47
par venom
salut cameleonTH je te remercie c'est cool c'est exactement ce que je chercher maintenant je vais voir les codes que vous avez ecrit pour moi comprendre :) ;) encore mercie a vous et a bientot


@++