ouvrir un fichier text

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
venom
Messages : 3138
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

ouvrir un fichier text

Message 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
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Avatar de l’utilisateur
Droopy
Messages : 1151
Inscription : lun. 19/juil./2004 22:31

Message 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
CameleonTH
Messages : 333
Inscription : sam. 25/juin/2005 11:18
Localisation : Laon (02)
Contact :

Message par CameleonTH »

J'ai pas compris pourquoi tu avait utiliser un OpenPreferences mais en tous cas elle est la ta faute.
Avatar de l’utilisateur
venom
Messages : 3138
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

Message 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


@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
CameleonTH
Messages : 333
Inscription : sam. 25/juin/2005 11:18
Localisation : Laon (02)
Contact :

Message 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.
Avatar de l’utilisateur
venom
Messages : 3138
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

Message 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


@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Répondre