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

Modules Perl Discussion :

Problème de caractères bizarres, besoin de concevoir un convertisseur


Sujet :

Modules Perl

  1. #1
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 572
    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 572
    Points : 2 014
    Points
    2 014
    Par défaut Problème de caractères bizarres, besoin de concevoir un convertisseur
    Bonjour !

    Nous rencontrons des soucis au taf autour d'une BDD Basis.

    Pour certains types de données, nous alimentons les champs de nos enregistrements par simple copié-collé d'un document Word directement dans la base de données.

    Notre application permettant d'interagir avec la base est du type webtop, avec affichage en mode HTML.

    C'est lorsque nous extrayons ces mêmes données en mode texte que l'on vient de constater un gros problème de caractères.

    Exemple sur un bout de titre :

    Dans Word : L'efficacité des conditions d'hygiène...

    Dans le WebTop : L'efficacité des conditions d'hygiène...

    En mode texte : L.efficacité des conditions d.hygiène...

    Je n'ai pas approfondi davantage mais je présume que d'autres caractères sont concernés, comme le tiret quadratin (caractère spécial de Word), censé devenir en mode texte le tiret classique de la touche 6 au-dessus du pavé alphanumérique.

    J'aurais besoin de concocter un script perl pour convertir nos données correctement. Mais j'ignore totalement sur quelle base m'appuyer sur le format des mauvaises données, ainsi que celui pour les convertir en bonnes données.

    Qui a un tuyau ?

    -----------------------------------

    Trés important : il m'est impossible d'installer le moindre ppm, nos postes étant verrouillés à outrance. Voici ce que j'ai comme packages :

    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
    C:\WINNT\system32>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)
    XML-Parser       [2.27   ] A Perl module for parsing XML documents
    XML-Simple       [1.06   ] Easy API to read/write XML (esp config files)
    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:\WINNT\system32>

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 572
    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 572
    Points : 2 014
    Points
    2 014
    Par défaut
    Autre élément d'information : lorsque l'on fait un copié-collé du texte Word dans un éditeur de texte (chez nous, c'est TextPad), et qu'on insère ensuite par copié-collé le texte de TextPad dans la base, ça fonctionne.

    Le soucis, c'est que ce n'est pas une science exacte, ça fonctionne mais pas toujours. Est-ce à croire que le problème est différent d'une version Word à l'autre ???

  3. #3
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 572
    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 572
    Points : 2 014
    Points
    2 014
    Par défaut
    J'vous ai bien calmé avec mon problème hein

    En attendant, l'est toujours là le bougre

  4. #4
    Mr6
    Mr6 est déconnecté
    Membre éclairé

    Homme Profil pro
    Inscrit en
    Septembre 2004
    Messages
    607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2004
    Messages : 607
    Points : 794
    Points
    794
    Par défaut
    je serais tenté de te proposer de t'orienter vers un codage html 16-bit et de transformer tous tes caractères "spéciaux" avant de les enregistrer dans ta base. Donc é => &eacute; ê =>< &ecirc; etc....
    Mais je ne sais pas si ca va bien t'aider...

    @+
    Mr6

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    427
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 427
    Points : 459
    Points
    459
    Par défaut
    les encodage c'est vraiment la merde.
    Pourquoi tout le monde n'ecrit pas en 7 bits ?

    pour ton probleme precis tu peux essayer Encode::Guess qui fait partie du core (ou encore mieux Encode:etect, mais bon la il faut l'installer, et en plus il est ultra chiant à installer....)

    bon courage
    Recherche staigiaire(s) motivé(s) sur projet perl/reseau a grande echelle. Me contacter par mp.

  6. #6
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 572
    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 572
    Points : 2 014
    Points
    2 014
    Par défaut
    Zut, Encode::Guess fait peut être parti du Core, mais pas sur ma version v5.6.1 build 635 d'Active State

    Et vu que je ne peux rien installer et encore moins une nouvelle release de Perl, je ne peux pas passer par cette solution.

    Et le problème persiste toujours, pour résumer rapidos :

    - les champs de notre BDD sont visualisables selon les postes de 2 façons : soit façon webtop (l'affichage n'est que du html), soit dans une vieille version logicielle conçue avec VB6 et qui affiche dans des fenêtres en mode texte.

    - des copiés-collés de phrases via word ou Excel directement dans les champs de la BDD remplacent certains caractères. Exemple : d'une certitude sous Word devient d.une certitude une fois dans la base de données.

    - le problème, c'est que via le webtop, on ne voit aucune anomalie alors qu'en version logicielle, ça saute littéralement aux yeux. Mise en oeuvre devient Mise en .uvre et ce genre de cas est chiatique au possible car nous faisons énormément d'exports des données de notre base au format brut (txt).

    Pour l'instant, je me contente (et c'est un bien grand mot) d'un script Perl fait à l'arrache et qui scanne un enregistrement contenant des titres pour tenter de corriger ce type d'erreurs. Mais les cas particuliers sont nombreux et une simple correction peut parfois amener d'autres erreurs plutôt qu'une bonne correction.

  7. #7
    Membre habitué Avatar de rcageot
    Profil pro
    rien
    Inscrit en
    Septembre 2006
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : rien

    Informations forums :
    Inscription : Septembre 2006
    Messages : 128
    Points : 170
    Points
    170
    Par défaut
    au pire tu peux encore en base64 et décoder à chaque fois non ?
    j'ai pas saisi si le pb venant du stockage dans la BD ou de l'affichage en mode texte ?
    Si un ricard vaut un steak, j'ai bien bouffé une vache hier soir !
    L'art de poser les bonnes questions dans les forums afin de ne pas passer pour un

  8. #8
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 572
    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 572
    Points : 2 014
    Points
    2 014
    Par défaut
    Merci pour ta solution mais je viens d'essayer un test et

    Cas concret, voici un exemple de titre issu d'un enregistrement de la base : Emballage - Emballages d. expédition complets et pleins et charges unitaires - Programmes d. essai de performance pour circuits de distribution courants.

    Le titre devrait ressembler à ça : Emballage - Emballages d'expédition complets et pleins et charges unitaires - Programmes d'essai de performance pour circuits de distribution courants.

    Je viens de tester MIME::Base64 via un bout de script :

    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
     
    use strict;
    use MIME::Base64;
     
    my $texte = "Emballage -  Emballages d. expédition complets et pleins et charges unitaires - Programmes d. essai de performance pour circuits de distribution courants";
     
    my ($encoded, $decoded);
     
    $encoded = encode_base64($texte);
    print "\$encoded = $encoded\n";
     
    $decoded = decode_base64($encoded);
    print "\$decoded = $decoded\n";
     
    $decoded = decode_base64($texte);
    print "\$decoded = $decoded\n";
    Et voici le résultat de mes print :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $encoded = RW1iYWxsYWdlIC0gIEVtYmFsbGFnZXMgZC4gZXhw6WRpdGlvbiBjb21wbGV0cyBldCBwbGVpbnMg
    ZXQgY2hhcmdlcyB1bml0YWlyZXMgLSBQcm9ncmFtbWVzIGQuIGVzc2FpIGRlIHBlcmZvcm1hbmNl
    IHBvdXIgY2lyY3VpdHMgZGUgZGlzdHJpYnV0aW9uIGNvdXJhbnRz
     
    $decoded = Emballage -  Emballages d. expédition complets et pleins et charges unitaires - Programmes d. essai de performance pour circuits de distribution courants
    $decoded = fÚ–V xI›jYZë{]ŠØ¨Ê&¦W*±ëi•è§±ë\��ªàz˧ŠÖ¢*뮈+již±×¬±¨z—«~Šæjw¦‹«r*ܺ+luçb²Úânëb¢w(º¶
    §¶
    Une autre idée ?

  9. #9
    Membre habitué Avatar de rcageot
    Profil pro
    rien
    Inscrit en
    Septembre 2006
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : rien

    Informations forums :
    Inscription : Septembre 2006
    Messages : 128
    Points : 170
    Points
    170
    Par défaut
    la je ne vois plus qu'une table de conversion histoire de remplacer tous les caractères "spéciaux" par des équivalent 7bit
    Si un ricard vaut un steak, j'ai bien bouffé une vache hier soir !
    L'art de poser les bonnes questions dans les forums afin de ne pas passer pour un

  10. #10
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 572
    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 572
    Points : 2 014
    Points
    2 014
    Par défaut
    Chiatique ce problème !!

    Le gros soucis majeur planqué derrière tout ça, c'est que les personnes qui renseignent ces titres dans notre BDD sont des néophytes en matière d'informatique. Pour eux, Word est du traitement de texte, donc texte pur et brut et on a beau leur rabacher d'éviter de faire du copy/paste à tout va entre Word et notre BDD et de plutôt le faire depuis TextPad par exemple et notre BDD, rien à faire, y captent pas.

    Dans qq semaines, on va nous supprimer l'ancien logiciel conçu en VB et nous n'aurons plus que le webtop et son html tout pourlingue pour travailler. Il nous sera alors impossible de retrouver ces erreurs en visualisation à l'écran !!

  11. #11
    Membre actif Avatar de scaleo
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    327
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 327
    Points : 219
    Points
    219
    Par défaut
    Dit moi Arioch tes données sous enregistré avec qu'elle charset dans votre base de données ?????

    Tu n'a pas besoin d'installer de ppm je pense quand modifiant les lib tu peut arriver a les utiliser sans les intaller genre tu met maison::chat::coucou tu le transforme en coucou et tu fait fait cond use coucou; c'est chiant mais au moins tu peut outre passer les limitations a la c** qu'on vous met
    Vista powaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ::

  12. #12
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 572
    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 572
    Points : 2 014
    Points
    2 014
    Par défaut
    Citation Envoyé par scaleo
    Dit moi Arioch tes données sous enregistré avec qu'elle charset dans votre base de données ?????
    Il me semble une fois avoir vu ISO 8859-1, ce qui correspondrait sauf erreur à du codage sur un seul octet et qu'il s'agirait de l'alphabet latin 1.

  13. #13
    Membre habitué Avatar de rcageot
    Profil pro
    rien
    Inscrit en
    Septembre 2006
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : rien

    Informations forums :
    Inscription : Septembre 2006
    Messages : 128
    Points : 170
    Points
    170
    Par défaut
    je sais pas si ça peut t'aider mais ici : http://golem.ph.utexas.edu/~distler/...es/000347.html
    j'ai trouvé ça !

    si strip_controlchars=1
    il retire les caractère de control
    si strip_controlchars=2
    en plus il convertit les saloperies ;-)


    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
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
     
    my %windows_1252 = (
      '\x00'  => '',
      '\x01'  => '',
      '\x02'  => '',
      '\x03'  => '',
      '\x04'  => '',
      '\x05'  => '',
      '\x06'  => '',
      '\x07'  => '',
      '\x08'  => '',
      '\x0B'  => '',
      '\x0C'  => '',
      '\x0E'  => '',
      '\x0F'  => '',
      '\x10'  => '',
      '\x11'  => '',
      '\x12'  => '',
      '\x13'  => '',
      '\x14'  => '',
      '\x15'  => '',
      '\x16'  => '',
      '\x17'  => '',
      '\x18'  => '',
      '\x19'  => '',
      '\x1A'  => '',
      '\x1B'  => '',
      '\x1C'  => '',
      '\x1D'  => '',
      '\x1E'  => '',
      '\x1F'  => '',
      '\x7F'  => '',
      '\x80' => '&#x20AC;',
      '\x81' => '',
      '\x82' => '&#x201A;',
      '\x83' => '&#x192;',
      '\x84' => '&#x201E;',
      '\x85' => '&#x2026;',
      '\x86' => '&#x2020;',
      '\x87' => '&#x2021;',
      '\x88' => '&#x2C6;',
      '\x89' => '&#x2030;',
      '\x8A' => '&#x160;',
      '\x8B' => '&#x2039;',
      '\x8C' => '&#x152;',
      '\x8D' => '',
      '\x8E' => '&#x17D;',
      '\x8F' => '',
      '\x90' => '',
      '\x91' => '&#x2018;',
      '\x92' => '&#x2019;',
      '\x93' => '&#x201C;',
      '\x94' => '&#x201D;',
      '\x95' => '&#x2022;',
      '\x96' => '&#x2013;',
      '\x97' => '&#x2014;',
      '\x98' => '&#x2DC;',
      '\x99' => '&#x2122;',
      '\x9A' => '&#x161;',
      '\x9B' => '&#x203A;',
      '\x9C' => '&#x153;',
      '\x9D' => '',
      '\x9E' => '&#x17E;',
      '\x9F' => '&#x178;'
    );
     
    sub strip_controlchars { 
      my $text = shift;
      my $arg_value = shift;
      my $ctx = shift;
      if ($arg_value == 1) {
    	$text =~ s/[\x00-\x08\x0B\x0C\x0E\x0F\x10-\x1F\x80-\x9F]//g;
      } elsif ($arg_value == 2) {
    	my $controlchar;
    	foreach $controlchar (sort keys(%windows_1252)) {
    	   $text =~ s/$controlchar/$windows_1252{$controlchar}/g;
    	}
      }
      return $text;
    }
     
    1;
    Si un ricard vaut un steak, j'ai bien bouffé une vache hier soir !
    L'art de poser les bonnes questions dans les forums afin de ne pas passer pour un

  14. #14
    Membre actif Avatar de scaleo
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    327
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 327
    Points : 219
    Points
    219
    Par défaut
    Citation Envoyé par Arioch
    Il me semble une fois avoir vu ISO 8859-1, ce qui correspondrait sauf erreur à du codage sur un seul octet et qu'il s'agirait de l'alphabet latin 1.
    Sa vient surement d'un problème d'encodage si Word utilise du Windows-1252 et que ta DBD utilise de l'iso-8859-1 il te faut convertir via le module encode.
    Vista powaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ::

  15. #15
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 572
    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 572
    Points : 2 014
    Points
    2 014
    Par défaut
    Citation Envoyé par scaleo
    Sa vient surement d'un problème d'encodage si Word utilise du Windows-1252 et que ta DBD utilise de l'iso-8859-1 il te faut convertir via le module encode.
    C:>ppm install Encode
    Installing package 'Encode'...
    Downloading http://ppm.activestate.com/PPMPackag...-multi-thread/
    Encode-1.99.tar.gz ...
    Error installing package 'Encode': Error reading ttp://ppm.activestate.com/PPMP
    ackages/5.6/MSWin32-x86-multi-thread/Encode-1.99.tar.gz

    Manque de chance ! L'archive .tar.gz n'est plus disponible sur le site d'ActiveState pour Perl v5.6

  16. #16
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 572
    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 572
    Points : 2 014
    Points
    2 014
    Par défaut
    Voici ce qu'ActiveState propose pour Encode :

    C:>ppm search Encode
    Packages available from http://ppm.ActiveState.com/cgibin/PP...erver.pl?urn:/
    PPMServer:
    Encode [1.99] character encodings
    Encode-Arabic [1.10] Perl extension for encodings of Arabic
    Encode-Mapper [1.16] Perl extension for intuitive, yet efficient construction
    of mappings for Encode
    Encode-Registry [0.13] Encoding Registry module
    Encode-UTR22 [0.13] UTR22c support for Perl
    Encode-compat [0.05] Encode.pm compatibility layer
    Number-Encode [1.00] Encode bit strings into digit strings

  17. #17
    Membre habitué Avatar de rcageot
    Profil pro
    rien
    Inscrit en
    Septembre 2006
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : rien

    Informations forums :
    Inscription : Septembre 2006
    Messages : 128
    Points : 170
    Points
    170
    Par défaut
    as tu regardé les solution proposées sur http://golem.ph.utexas.edu/~distler/...es/000347.html ??

    sinon en module il y a Unicode::Map qui pourrait peut être faire l'affaire pour ta 5.6
    http://search.cpan.org/~mschwartz/Un...p-0.112/Map.pm
    Si un ricard vaut un steak, j'ai bien bouffé une vache hier soir !
    L'art de poser les bonnes questions dans les forums afin de ne pas passer pour un

  18. #18
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 572
    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 572
    Points : 2 014
    Points
    2 014
    Par défaut
    Citation Envoyé par rcageot
    as tu regardé les solution proposées sur http://golem.ph.utexas.edu/~distler/...es/000347.html ??

    sinon en module il y a Unicode::Map qui pourrait peut être faire l'affaire pour ta 5.6
    http://search.cpan.org/~mschwartz/Un...p-0.112/Map.pm
    J'ai fait plusieurs tests avec les différents modules Unicode mais sans résultats probants.

    J'avoue ne pas m'être trop penché sur les solutions de ta 1ère url parce que le problème est vraiment strange

    Dans la même phrase, j'ai topé ce matin 2 points à la place d'apostrophes et 1 apostrophe qui était pourtant belle et bien présente !!! Ce qui laisse entendre que les 3 caractères "apostrophes" de cette même phrase ne sont pas exactement les mêmes caractères.

    Et faire différentes transformations de la chaîne avec unicode::Map ne change rien à l'affaire.

  19. #19
    Membre habitué Avatar de rcageot
    Profil pro
    rien
    Inscrit en
    Septembre 2006
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : rien

    Informations forums :
    Inscription : Septembre 2006
    Messages : 128
    Points : 170
    Points
    170
    Par défaut
    as tu regardé à quel code ascii correspondait les caractères bizarres ?
    Si un ricard vaut un steak, j'ai bien bouffé une vache hier soir !
    L'art de poser les bonnes questions dans les forums afin de ne pas passer pour un

  20. #20
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 572
    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 572
    Points : 2 014
    Points
    2 014
    Par défaut
    Citation Envoyé par rcageot
    as tu regardé à quel code ascii correspondait les caractères bizarres ?
    Oui, en utilisant chr( ). C'est l'une des premières choses que j'ai testé et ça me renvoie bien le code ascii du caractère que je transmet. Donc le point à la place de l'apostrophe est topé comme un point.

Discussions similaires

  1. Problème de caractère ?
    Par Leishmaniose dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 07/11/2006, 17h29
  2. problème de caractères clavier!!!
    Par brunetc dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 10/06/2005, 13h39
  3. [SQL Server] problème de caractères spéciaux
    Par mbibim63 dans le forum MS SQL Server
    Réponses: 10
    Dernier message: 02/06/2005, 18h38
  4. [MiniPascal] Problème de caractères accentués
    Par Clandestino dans le forum Autres IDE
    Réponses: 3
    Dernier message: 03/10/2004, 13h12
  5. Problème de LINK Bizarre !!
    Par Jasmine dans le forum MFC
    Réponses: 24
    Dernier message: 19/03/2004, 15h58

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