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

Langage Perl Discussion :

Eclater une ligne selon chacun de ses caractères, comment procéder


Sujet :

Langage Perl

  1. #1
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 603
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2003
    Messages : 1 603
    Par défaut Eclater une ligne selon chacun de ses caractères, comment procéder
    ... Lorsque la-dite ligne pèse 103 Mo dans un fichier ???

    Je dois vérifier que les caractères contenus dans le fichier soient conformes à une palette de caractères autorisés. Si un caractère ne rentre pas dans la norme, l'écrire dans le log.

    J'ai commencé par faire un split de LA ligne de 103 Mo donc. Même sur une bécane de course (bi-proc' Intel + au moins 2 Go de mémoire), le prog est dans les choux. Au pire, il mouline pendant un certain temps (1/2 heure) sans rien faire, au mieux il affiche un MsgBox avertissant d'un manque de mémoire virtuelle

    Comment faire pour vérifier que chaque caractère est conforme avec une telle ligne ?

    Petite précision qui a son importance : nos postes sont verrouillés par le Service Info, on ne peut pas installer quoi que ce soit.

    Voici donc la version de Perl utilisée + les packages installés :

    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
    C:\>perl -v
     
    This is perl, v5.6.1 built for MSWin32-x86-multi-thread
    (with 1 registered patch, see perl -V for more detail)
     
    Copyright 1987-2001, Larry Wall
     
    Binary build 635 provided by ActiveState Corp. http://www.ActiveState.com
    Built 15:34:21 Feb  4 2003
     
     
    Perl may be copied only under the terms of either the Artistic License or the
    GNU General Public License, which may be found in the Perl 5 source kit.
     
    Complete documentation for Perl, including FAQ lists, should be found on
    this system using `man perl' or `perldoc perl'.  If you have access to the
    Internet, point your browser at http://www.perl.com/, the Perl Home Page.
     
     
    C:\>
    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
    C:\>ppm query
    Archive-Tar        [0.072  ] module for manipulation of tar archives.
    Compress-Zlib      [1.16   ] Interface to zlib compression library
    Digest             [1      ] Modules that calculate message digests
    Digest-HMAC        [1.01   ] Keyed-Hashing for Message Authentication
    Digest-MD2         [2      ] Perl interface to the MD2 Algorithm
    Digest-MD4         [1.1    ] Perl interface to the MD4 Algorithm
    Digest-MD5         [2.20   ] Perl interface to the MD5 Algorithm
    Digest-SHA1        [2.01   ] Perl interface to the SHA-1 Algorithm
    File-CounterFile   [0.12   ] Persistent counter class
    Font-AFM           [1.18   ] Interface to Adobe Font Metrics files
    HTML-Parser        [3.26   ] HTML parser class
    HTML-Tagset        [3.03   ] Data tables useful in parsing HTML
    HTML-Tree          [3.11   ] HTML syntax tree builder
    MD5                [2.02   ] Perl interface to the MD5 Algorithm (obsolete)
    MIME-Base64        [2.12   ] Encoding and decoding of base64 strings
    Net-Telnet         [3.03   ] Interact with TELNET port or other TCP ports
    PPM                [2.2    ] Perl Package Manager: locate, install, upgrade
                                 software packages.
    SOAP-Lite          [0.55   ] Library for Simple Object Access Protocol (SOAP)
                                 clients and servers in Perl
    Storable           [1.0.12 ] persistency for perl data structures
    Tk                 [800.024] A Graphical User Interface Toolkit
    URI                [1.19   ] Uniform Resource Identifiers (absolute and
                                 relative)
    Unicode-Lite       [0.12   ] Easy conversion between encodings
    Unicode-Map        [0.112  ] maps charsets from and to utf16 unicode
    Unicode-UTF8simple [1.06   ] Conversions to/from UTF8 from/to charactersets
    XML-Parser         [2.27   ] A Perl module for parsing XML documents
    XML-Simple         [1.06   ] Easy API to read/write XML (esp config files)
    enum               [1.016  ] C style enumerated types and bitmask flags in Perl
    libnet             [1.12   ] Collection of Network protocol modules
    libwin32           [0.20   ] A collection of extensions that aims to provide
                                 comprehensive access to the Windows API.
    libwww-perl        [5.68   ] Library for WWW access in Perl
     
    C:\>

  2. #2
    Expert confirmé
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Par défaut
    Utilise read() pour lire la ligne par morceaux de taille acceptable (2 Mo par exemple).

    --
    Jedaï

Discussions similaires

  1. Masquer une ligne selon resultat dans une colonne
    Par amne26 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 15/10/2008, 23h45
  2. Colorer une ligne selon condition
    Par NEC14 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 03/10/2008, 08h23
  3. [ListView/GridView]Afficher une ligne selon un critère de l'item
    Par anthyme dans le forum Windows Presentation Foundation
    Réponses: 5
    Dernier message: 28/06/2008, 11h28
  4. Découper une ligne selon un separateur sans le 1er champ
    Par pascalbout1 dans le forum Langage
    Réponses: 2
    Dernier message: 31/10/2007, 11h18
  5. Ne pas afficher une ligne selon une valeur
    Par uloaccess dans le forum Access
    Réponses: 3
    Dernier message: 18/11/2005, 14h04

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