IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WinDev Discussion :

Extraire une chaine [WD18]


Sujet :

WinDev

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 75
    Points : 38
    Points
    38
    Par défaut Extraire une chaine
    Bonjour à tous
    je cherche a extraire des informations d'un fichier texte.
    je me positionne sur la valeur %INDEX%PLAYER
    je veux récupérer la ligne au dessus dans une table mais a chaque fois j'ai de donnée erronées.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
    ChaineBalise est une chaîne 
    Num,sPrenom,sNom,sDate est une chaîne
    sCtr_ball,sDribbles,sFinitions,sPuss_tirs,sTirs_Loin,sRepr_Volée est une chaîne
    sCentre,sPasses,sPasses_Longues,sPrec_tete,sTacle_debout,sTacle_glissé,sMarquage_ind est une chaîne
    sAcceleration,sVitesse,sAgilite,sDetente_verticale,sPuissance,sEndurance,sEquilibre est une chaîne
    sIdfichier est une chaîne
     
     
    TableSupprimeTout(TABLE_Joueurs)
    sIdfichier = SAI_Chemin_texte
    ChaineOrigine est une chaîne = fChargeTexte(SAI_Chemin_texte)
    v_indice est un entier 
    BOUCLE
    	v_indice++
    	ChaineBalise = ExtraitChaîne(ChaineOrigine ,v_indice+1,"%INDEX%PLAYER")
    	SI ChaineBalise = EOT ALORS SORTIR
     
    	// on recuperre le numero
    	Num  				= 	ExtraitChaîne(ChaineBalise ,2,RC,DepuisFin) 
    	sPrenom  			= 	ExtraitChaîne(ChaineBalise ,1,"|",DepuisDébut)
    	sNom 				= 	ExtraitChaîne(ChaineBalise ,4,"|",DepuisFin)
    	sDate 				= 	ExtraitChaîne(ChaineBalise,6,RC)
    	sCtr_ball 			= 	ExtraitChaîne(ChaineBalise,22,",")
    	sDribbles 			=	ExtraitChaîne(ChaineBalise,23,",")
    	sFinitions			=	ExtraitChaîne(ChaineBalise,24,",")
    	sPuss_tirs			=	ExtraitChaîne(ChaineBalise,25,",")
    	sTirs_Loin			=	ExtraitChaîne(ChaineBalise,26,",")
    	sRepr_Volée			=	ExtraitChaîne(ChaineBalise,27,",")
    	sCentre				=	ExtraitChaîne(ChaineBalise,28,",")	
    	sPasses				=	ExtraitChaîne(ChaineBalise,29,",")
    	sPasses_Longues		=	ExtraitChaîne(ChaineBalise,30,",")
    	sPrec_tete			=	ExtraitChaîne(ChaineBalise,31,",")
    	sTacle_debout		=	ExtraitChaîne(ChaineBalise,32,",")
    	sTacle_glissé		=	ExtraitChaîne(ChaineBalise,33,",")
    	sMarquage_ind		=	ExtraitChaîne(ChaineBalise,34,",")
    	sAcceleration		=	ExtraitChaîne(ChaineBalise,35,",")
    	sVitesse			=	ExtraitChaîne(ChaineBalise,36,",")
    	sAgilite			=	ExtraitChaîne(ChaineBalise,37,",")
    	sDetente_verticale	=	ExtraitChaîne(ChaineBalise,38,",")
    	sPuissance			=	ExtraitChaîne(ChaineBalise,39,",")
    	sEndurance			=	ExtraitChaîne(ChaineBalise,40,",")
    	sEquilibre			=	ExtraitChaîne(ChaineBalise,41,",")
     
    	TableAjouteLigne(TABLE_Joueurs,Num,sPrenom,sNom,sDate,sCtr_ball,sDribbles,sFinitions,sPuss_tirs,sTirs_Loin,...
    				   sRepr_Volée,sCentre,sPasses,sPasses_Longues,sPrec_tete,sTacle_debout,sTacle_glissé,sMarquage_ind,...
    				   sAcceleration,sVitesse,sAgilite,sDetente_verticale,sPuissance,sEndurance,sEquilibre)
     
    FIN
    merci d'avance de votre aide..
    Fichiers attachés Fichiers attachés

  2. #2
    Membre habitué
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Janvier 2007
    Messages
    221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 221
    Points : 185
    Points
    185
    Par défaut
    Bonjour

    a la grosse

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    // Ouvre le sélecteur de fichiers
    sFichier est une chaîne = "D:\Programmation (WinDev)\Essai\test.txt"
    NumFic est un entier 
    ligne est une chaîne
     
    NumFic = fOuvre(sFichier,foLecture)
     
    SI NumFic = -1 ALORS
    	// Une erreur a été détectée pendant l'ouverture du fichier
    	Erreur(ChaîneConstruit("Erreur d'ouverture du fichier %1",sFichier),ErreurInfo())
    	RETOUR
    SINON
     
    	TableSupprimeTout(TABLE_DataGridViewCharge)
    	nposition est un entier 
     
    	BOUCLE
    		// Lecture ligne par ligne du fichier
    		ligne=fLitLigne(NumFic)
    		nposition++
           TableAjouteLigne(TABLE_DataGridViewCharge,nposition,ligne )
    	SI ligne = EOT ALORS SORTIR
      FIN
     
      TableSupprimeTout(TABLE_DataGridViewData)
      POUR nLigne = 1 _A_ TableOccurrence(TABLE_DataGridViewCharge)
      	IF TABLE_DataGridViewCharge[nLigne,2] = "%INDEX%PLAYER" ALORS
      	   TableAjouteLigne(TABLE_DataGridViewData,nLigne-1,TABLE_DataGridViewCharge[nLigne-1,2] )
      	FIN
      FIN
     
    // Fermeture du fichier
    fFerme(NumFic)
     
    FIN
    maintenant tu peux faire cela avec juste un tableau , je l'ai fait avec deux tables

    Fred
    Images attachées Images attachées  

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 75
    Points : 38
    Points
    38
    Par défaut
    merci pour la solution je test.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Extraire une chaine contenue entre 2 delimiteurs
    Par gregb34 dans le forum Langage
    Réponses: 2
    Dernier message: 17/02/2006, 08h21
  2. Extraire une chaine
    Par had182 dans le forum Débuter
    Réponses: 2
    Dernier message: 07/01/2006, 18h24
  3. Extraire une chaine de caratere
    Par matthieu5978 dans le forum Langage
    Réponses: 2
    Dernier message: 15/12/2005, 19h52
  4. [RegEx] Extraire une chaine
    Par pierre50 dans le forum Langage
    Réponses: 8
    Dernier message: 15/09/2005, 12h43
  5. Réponses: 2
    Dernier message: 10/07/2002, 11h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo