nazzguhl
Messages postés26Date d'inscriptionmardi 17 décembre 2002StatutMembreDernière intervention26 janvier 2011
-
10 août 2005 à 12:51
MNEMONIC
Messages postés59Date d'inscriptiondimanche 19 décembre 2004StatutMembreDernière intervention 1 septembre 2006
-
10 août 2005 à 18:18
Bonjour,
Tout d'abord, je doit dire que je ne programme pas en C, mais VB, on m'a conseillé d'écrire l'outil que j'ai besoin en C.
J'ai à traiter des fichiers textes (en fait c'est du spool PCL) d'environ 1 à 2 Go et pour chaque page je dois extraire des infos en VB il faut 6 à 8 heures et il paraît qu'en C ce même programme mettrait 2 à 3 minutes !
Explication de l'outil : il faut lire un fichier texte (spool PCL : pas de CRLF, chaque article commence par le code hexa "1B", pas de notion de longueur d'article) et rechercher plusieurs balises PCL (séquences binaires), exemple en hexa :
balise 1 = "1b2a7031323035581b2a7035383159" ou
balise 2 = "1b2a7032323397837303259" ou
balise 3 = "1b20703132303578343732591b2670333058"
et pour chaque balise je récupère le texte qui suit la balise (jusqu'au "1b" suivant).
Pour la balise 1 j'incrémente un compteur.
En plus pour la balise 1, j'écrit dans un fichier texte les infos stockées de chaque balises
et de même en fin de fichier
Est-ce que quelqu'un pourrait m'écrire le source ? le plus simple possible, j'aurai certainement d'autres balises à ajouter plus tard, j'ai récuppéré un compilateur C gratuit pour créer l'exe
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 10 août 2005 à 13:06
et comment tu vas gérer les 2 ou 3 minutes (possible que soit encore moins si bien écrit) en VB ??? VB ne sait pas gérer le multi thread sans planter, les progs qui font de gros traitements doivent s'écrire complet en C.
VB est bon pour faire mumuse, on n'a jamais vu un prog correct en vente fait en VB, à laisser dans la mallette de jeux pour enfants.
nazzguhl
Messages postés26Date d'inscriptionmardi 17 décembre 2002StatutMembreDernière intervention26 janvier 2011 10 août 2005 à 15:41
Je te remercie pour ta réponse qui ne m'avance à rien, ce n'est pas moi qui ait choisi le langage préconisé à ma boite.
Si tu fais parti des personnes qui aide les autres tu réponds normalement sans faire de commentaire sur le choix de logiciel, je travaille bien sous windows alors que je ne supporte pas microsoft... je ne démissione pas pour autant !
Si c'est pour faire des commentaires insultants, à mon avis tu n'as rien à faire sur ces forum, même si tu es une bête dans ta partie.
Le langage VB fonctionne très bien pour nos besoins, sauf pour certain traitement de fichier (conversion, extraction de fichier avec des positionnement bizare).
Or la seule personne qui connait le langage C est en vacances jusquà fin août et je doit récupérer les info du fichier PCL pour vendredi au plus tard et en VB le traitementest trop long : je ne peut pas mobiliser un serveur de traitement plus de 10 min (on traite environ 400 appli par jour).
Il me faut juste un source C qui me permettra de traiter le fichier puis de relire les info par un VB, je n'ai pas d'autres solutions et c'est urgent.
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 10 août 2005 à 15:50
ah alors si tu mets ici en plus du MP, je fais de même:
commentaires insultants ???
Je ne suis pas maître d'école, faut voir ailleurs pour les leçons de lecture ou alors m'indiquer où se trouve quelque insulte.
Bien entendu qu'on peut faire des comments sur les choix techniques pourvu qu'ils soient fondés. On n'est pas encore en régime communiste que je sache.
Pour ton code, c'est bien entendu trop long pour te le sortir dans l'heure qui suit. On me donne les specs précises, je fais un devis et on voit si on est d'accord, simple, non ?
ciao...
BruNews, MVP VC++
Vous n’avez pas trouvé la réponse que vous recherchez ?
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 10 août 2005 à 16:06
MNEMONIC > on ne traite pas de grosses masses de données avec des fgets et autres bidules interprétés, c'est aussi trop lent. Faut boucler par aspiration dans un buffer.
exemple ici:
TROUVER UNE CHAINE DE CARACTÈRES(2) (WIN32)
http://www.cppfrance.com/code.aspx?id=19169