1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.
  2. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

algorithmes pour lire fichiers texte sans séparateurs - windev

Discussion dans 'Windev' créé par JML, Avr 1, 2018.

  1. Dandypunk

    Dandypunk Well-Known Member

    Inscrit:
    Nov 28, 2019
    Messages:
    550
    J'aime reçus:
    302
    Le problème vient surtout que les séparateurs, hormis les séparateurs de lignes (LF) ne sont pas normalisés et que toutes les informations ne sont pas remplies.
    Ainsi, sur la première ligne 18.00 semble correspondre au PU pour le premier et au prix total pour le 2° avec une quantité 1 en tête de ligne .
    Dans les 3 dernières lignes, la quantité apparaîtrait à la suite de la référence, pas de prix etc...
     
  2. khaliassas

    khaliassas Active Member

    Inscrit:
    Mar 4, 2019
    Messages:
    446
    J'aime reçus:
    142
    j'utiliserais cette fonction :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    tu charge le fichiers et avec une boucle pour toute ligne séparée par RC....


    edit je viens de voir que tu avait mis un exemple.

    j'ai l'impression que tes infos sont surtout regrouper par groupe de 7 lignes

    donc si tu retrouve le même schémas toutes les 7 lignes tu dois pouvoir faire un parcours qui récupère un bloc de 7 lignes


    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!




    si ton fichier, a chaque enregistrement sur longueur fixe :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    je pense que sur un enregistrement c'est compliqué de voir la structure.


    cordialement
     
    #22 khaliassas, Mar 6, 2020
    Dernière édition: Mar 6, 2020
  3. Dandypunk

    Dandypunk Well-Known Member

    Inscrit:
    Nov 28, 2019
    Messages:
    550
    J'aime reçus:
    302
    Voici le contenu du fichier :
    Code (Text):
    1,BH. CELEST,3200700015618,0,18.00,0,18.00,FV                                                  
    12660,12660,0,0,0,0,0,0,0,0,0,0,0,0                                                                  
    E12660                                                                                              
    15000,2340,A MARCELLINE                                                                        
    RENMOX 1000MG/200MG INJ                A1850*1                                                          
    ZENTEL 400MG B/1 COMP/PRC              A1585*2                                                          
    JUVAMINE FIZZ 11VITAM + 7MINER B/30    A3820*2                                                            
    Les lignes ne sont pas séparées par RC mais par LF
     
    #23 Dandypunk, Mar 6, 2020
    Dernière édition: Mar 6, 2020
  4. khaliassas

    khaliassas Active Member

    Inscrit:
    Mar 4, 2019
    Messages:
    446
    J'aime reçus:
    142
    oui j'ai vu le ficher le pb pour moi ne vient pas du séparateur de ligne(ce qui ne change globalement pas grand chose dans le code proposé) mais de la présentation des données.
    les 3 dernières sont semble t'il des références produits.
    la 4 eme ligne une adresse ou truc du genre. la première lignes divers infos.
    j'a il'impression que chaque ligne fait le même nombre de caractères quand j'affiche le fichier dans code writer.

    donc je disais il faudrait plusieurs ensemble pour analyse le fichiers et faire resortir la structure.
    comme la fin semble être le détail d'une commande ou d'une ordo... ici donnée sur 7 lignes mais tu peux avoir 4 5 10 produits.

    donc je reste sur il faudrait au moins 2 ou 3 entrée pour mieux appréhender la structure.

    par exemple une nouvelle ligne pourais toujours etre de la forme :
    1,BH. CELEST,3200700015618,0,18.00,0,18.00,FV

    du coup pour chaque ligne lu tu pourrais utiliser la fonction donnée plus haut :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!


    si correspond a la structure nouvelle entrée
    tu lance le traitement nouvelle entrée

    tout ca, et oui je suis long, pour dire on est pas sur un fichiers de donnée un entree = une ligne.
     
  5. Freddy KINHOU

    Freddy KINHOU New Member

    Inscrit:
    Juin 15, 2019
    Messages:
    4
    J'aime reçus:
    0
    Hello @

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    j'ai lut ton commentaire je peux fournir un exemple de fichier pour une comparaison et une meilleurs compréhension de la structure du fichier.
     

    Fichiers attachés:

    • TEST.txt
      Taille de fichier:
      810 bytes
      Affichages:
      14
  6. khaliassas

    khaliassas Active Member

    Inscrit:
    Mar 4, 2019
    Messages:
    446
    J'aime reçus:
    142
    j'ai l'impression car tu n'es pas extrement claire sur les info que chaque donnée correspond a un fichier
    deja y a une difference d'info entre les deux fichiers ( pas le meme nombre de separateur entre les deux fichiers

    je t'ai fait un exemple qui transpose ts fichier dans des varaibles (comme je ne sais pas a quoi corresponde les infos indiquer dans les fichiers.
    Code (Windev):

    // Ouverture d'un fichier externe
    IDFichier est un entier
    nomfichier,ResLecture est une chaîne
    tabListedonnéeenteteligne1 est tableau de chaînes
    tabListedonnéeenteteligne2 est tableau de chaînes
    sInfo1ligne4,sInfo2ligne4,sInfo3ligne4 est chaîne
    sRefligne3 est une chaîne
    tab_detailfichier est tableau de Variants
    vDetailfichier est Variant

    nUmligne est entier=1

    //1 : &Donner
    //2 : &Annuler
    SELON

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("Donner le nom du fichier",nomfichier)
        // &Donner
        CAS 1
           
        // &Annuler
        CAS 2
            RETOUR
    FIN
    IDFichier =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("C:\Users\vincent.ITEC\Downloads\"+nomfichier+".txt", foLectureEcriture)
    SI IDFichier <> -1 ALORS
        // Lecture d'une ligne dans ce fichier
        ResLecture =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (IDFichier,

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (10))
        TANTQUE ResLecture <> EOT
            SELON nUmligne
                CAS 1
                    tabListedonnéeenteteligne1=ChaîneDécoupe(ResLecture,",")
                CAS 2
                    tabListedonnéeenteteligne2    =ChaîneDécoupe(ResLecture,",")
                CAS 3
                    sRefligne3=    

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (ResLecture)
                CAS 4
                    (sInfo1ligne4,sInfo2ligne4,sInfo3ligne4)=    ChaîneDécoupe(ResLecture,",")
                   
                AUTRE CAS
                    (vDetailfichier.libelle,vDetailfichier.code,vDetailfichier.quantite)=ChaîneDécoupe(ResLecture,TAB,"*")
                    tab_detailfichier.

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (vDetailfichier)
            FIN
            nUmligne++
            ResLecture =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (IDFichier,

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (10))
        FIN
    FIN
     
    a la fin j'ai par exemple
    fichier test :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    pour le fichier IM:

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!


    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!


    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    je n'ai pas bien compris ce que tu comptais faire.

    mais en tous ca avec cette exemple tu as toute les utilisation de la fcontion chaine decoupe.





    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

     
  7. Freddy KINHOU

    Freddy KINHOU New Member

    Inscrit:
    Juin 15, 2019
    Messages:
    4
    J'aime reçus:
    0
    Ah Merci, L'aide je vais fait des essai dans mon projet pour voir le résultat. En faite mon client dispose déjà d'une application pour générer les factures à sont niveau je lui propose juste une solution qui exploit le fichier txt que sont application de gestion génère qui contient la liste des medoc acheter qts+prix le caissier qui à réaliser la vente. J'ai besoins de ses information parce qu'ils utilise un module de controle de facturation et leur éditeur ne travail plus eux.
    Je te reviens si ça à marché pour pas merci bien.
     
  8. AbouZizou

    AbouZizou Active Member
    MEMBRE WX WXG 21

    Inscrit:
    Fev 28, 2018
    Messages:
    170
    J'aime reçus:
    106

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Hello. J'ai besoins de votre aide. @

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    j'ai lut votre commentaire et j'aurais besoins de votre lumière .
    Alors voila je développe une application qui doit récupérer des information d'une facture fichier txt fournil par un autre logiciel pour ensuite
    l’exploiter. il s'agit ici d'une facture d'une pharmacie. Mon souci est que dans mon fichier en question il y a plusieurs séparateur et du coup j'ai du mal à trouver l'algo quil faut pour tiré juste les information que je veux(liste des médicaments vendu prix unitaire et quantité).
    voici mon fichier txt
    Cliquez pour agrandir...
    Bonsoir,
    SVP envoyez moi plusieurs fichiers texte différent fourni par l'autre logiciel pour trouver un algorithme, merci.
     
  • Freddy KINHOU

    Freddy KINHOU New Member

    Inscrit:
    Juin 15, 2019
    Messages:
    4
    J'aime reçus:
    0

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Bonsoir,
    SVP envoyez moi plusieurs fichiers texte différent fourni par l'autre logiciel pour trouver un algorithme, merci.
    Cliquez pour agrandir...
    J'ai déjà eu mon rerultat avec @

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    .
     
  • Partager cette page

    Chargement...