Page 1 sur 1

CreateListFromFile() - Creer une liste d'apres un fichier

Publié : mar. 03/janv./2012 13:44
par Ar-S
Voilà une nouvelle petite procedure qui servira peut-être à certain d'entre vous.
Je ne sais pas vous mais il n'est pas rare que je brasse des données d'un fichier texte. Il n'est pas rare non plus que j'ai à traiter chaque ligne. J'ai donc fait cette procédure afin de ne plus me prendre le boular à faire toujours la même opération.

Voilou :mrgreen:

Code : Tout sélectionner

Procedure CreateListFromFile (NumFichier_ARS, FilePath_ARS.s, List ListName.s())
  ; Ar-S / 03/01/2012
  ; Procédure de création d'une liste à partir d'un fichier.
  ; Retourne 1 si la liste a été créée ou 0 si échec
  
  Protected NbrLigne
  
  ClearList(ListName())
  NbrLigne = 0
  
  If ReadFile(NumFichier_ARS , FilePath_ARS)
    
    While Eof(NumFichier_ARS) = 0
      AddElement(ListName())
      ListName() = ReadString(NumFichier_ARS)
      NbrLigne + 1
    Wend
    
    CloseFile(NumFichier_ARS) 
    ProcedureReturn 1
    
  Else
    
    ; Decommentez si vous souhaitez voir le messagerequester() d'alerte en cas d'echec
    ; MessageRequester("Information","Impossible d'ouvrir le fichier "+GetFilePart(FilePath_ARS)+" !")
    
    ProcedureReturn 0
  EndIf
  
  
EndProcedure


; -------------------------------------
;        ------ Exemple ---------
; -------------------------------------

Global NewList Phrase.s()

; A modifier-----------------------------------------
Global chemin$ =  GetCurrentDirectory()+"list.txt"
; ---------------------------------------------------


Test = CreateListFromFile(0, chemin$ , Phrase())

If Test > 0
  Debug Test
  
  ForEach Phrase()
    Debug Phrase()
  Next
  
Else
  
  Debug Test
  
EndIf