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 PHP Discussion :

Importation de fichiers texte, changement d'encodage, 1er caractères foireux [PHP 5.2]


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 69
    Points : 53
    Points
    53
    Par défaut Importation de fichiers texte, changement d'encodage, 1er caractères foireux
    Bonjour à tous,

    J'importe dans un script PHP un fichier txt avec un encodage différent d'UTF-8, je change l'encodage et j'affiche le fichier texte dans une page web.

    Ca fonction presque parfaitement, en effet le tout 1er caractères ne s'affiche pas correctement.

    Pour avoir un exemple, exécutez ce bout de code :
    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    	<head>
    		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    	<head>
    	<body>
    <?php
     
    $file = 'http://www.pandora-box.ovh.org/Windows/XP/exe/tous/str/accwiz_str.txt';
     
    $tableau = file($file);
     
    while(list($cle, $val) = each($tableau))
    {
    	$ligne = mb_convert_encoding($val, "UTF-8", "UTF-16");
     
    	echo $ligne.'<br />';
    }
    ?>
    	</body>
    </html>
    Vous obtiendrez :

    Q00 RestoreUI
    2048 Restauration du système
    ...

    Savez pourquoi ça fait ça ? Avez vous une solution ?

    Merci d'avance

  2. #2
    Membre éclairé
    Profil pro
    Assistant recherche bioinformatique
    Inscrit en
    Novembre 2007
    Messages
    877
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Assistant recherche bioinformatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 877
    Points : 835
    Points
    835
    Par défaut
    Salut,
    Ton format de fichier est bizarre. En particulier, il débute avec 2 caractères non ascii.
    Linux me dit que le fichier est du type texte, mais que le contenu est detecté comme du mp3.
    Z.

  3. #3
    Membre émérite Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 896
    Points : 2 835
    Points
    2 835
    Par défaut
    je confirme : problème d'encodage de ton fichier...

    Essaye avec celui que je te met en piece jointe, chez moi ça marche

    PS : dans notepad++ j'ai changé le format de base (UCS-2 Little Indian) en UCS-2 Big Indian...
    Si je mettais le format en UTF-8 ça m'affichait des caractères chinois Oo
    Fichiers attachés Fichiers attachés

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 69
    Points : 53
    Points
    53
    Par défaut
    Ca je sais que le fichier à un encodage bizarre, mais j'en ai plus de 2000, je ne compte pas les modifies ^^

    Je pensais qu'il y avait un entête, genre BOM qu'on pourrait supprimer.

    En tout cas merci à vous, j'ai remplacé UTF-16 par UCS-2 pour la conversion. Je pensais avoir trouvé le bon encodage et c'est darkstar123456 qui à eu tout bon

    Pour info les fichiers quand je les ouvre avec notepad2 me les lisait très bien, c'est firefox qui m'avait mit sur la piste de UTF-16.

  5. #5
    Membre éclairé
    Profil pro
    Assistant recherche bioinformatique
    Inscrit en
    Novembre 2007
    Messages
    877
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Assistant recherche bioinformatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 877
    Points : 835
    Points
    835
    Par défaut
    Si tous ces fichiers ont exactement le meme 'type d'encodage', a toi de réaliser un parser pour 'decrypter' ces fichiers.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 69
    Points : 53
    Points
    53
    Par défaut
    Que quoi ? Faire quoi ? Pourquoi ?

  7. #7
    Membre éclairé
    Profil pro
    Assistant recherche bioinformatique
    Inscrit en
    Novembre 2007
    Messages
    877
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Assistant recherche bioinformatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 877
    Points : 835
    Points
    835
    Par défaut
    Pour rien si les caractères bizarre font en faite partie de l'encodage dont parl darkstar.
    Z.

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

Discussions similaires

  1. Importer un fichier texte
    Par po.lombard dans le forum Langage
    Réponses: 16
    Dernier message: 18/12/2005, 11h13
  2. Réponses: 4
    Dernier message: 27/10/2005, 11h05
  3. Pb pour importer un fichier texte
    Par sam01 dans le forum Requêtes
    Réponses: 2
    Dernier message: 29/09/2005, 13h16
  4. [VB.NET] Importation de fichier texte
    Par Hoegaarden dans le forum Windows Forms
    Réponses: 5
    Dernier message: 25/05/2004, 09h39
  5. Importer des fichiers textes délimités
    Par Invité dans le forum Outils
    Réponses: 2
    Dernier message: 23/09/2002, 13h56

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