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 :

[Tableaux] Lire et afficher un fichier bit à bit en PHP


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 172
    Par défaut [Tableaux] Lire et afficher un fichier bit à bit en PHP
    Bonjour,

    je voudrai afficher un fichier en binaire sur mon navigateur, j'ai essayer d'ouvrir un fichier avec openfile en précisant l'ouverture en mode binaire, mais après je ne sais pas quelles fonctions utiliser pour récupérer et afficher chaques bits du fichier.

    J'ai essayé avec printF mais apparement ça ne fonctionne pas.

    Si vous avez une idée, merci d'avance.

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 223
    Par défaut
    Il faudrait préciser ce que veut dire "afficher un fichier en binaire sur mon navigateur".
    S'il s'agit d'afficher la valeur de chaque octet d'un fichier en binaire, un $handle = fopen($filename, "rb"), des $octet = fread($handle, 1) associés à des printf("%08b", $octet) devraient faire l'affaire.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 172
    Par défaut
    En fait je voudrai afficher la valeur binaire de chaques octets d'un fichier sous forme de tableau dans un navigateur, merci pour ta réponse, je vais essayer ça ce soir.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 172
    Par défaut
    J'ai essayer de faire mon programme, est ce que c'est juste d'après vous ? apparemment pour moi ça fonctionne, j'ai essayer d'afficher sous forme binaire plusieurs types de fichiers (BMP, JPG, EXE) et ça me parait correct, qu'est ce que vous en pensez ?

    Merci

    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
    <html>
    <head>
    <title>test d'utilisation de fichier en php</title>
    </head>
     
    <body bgcolor="#000000" text="#ffff00">
    <?
    	if(!($file = fopen("./test.exe","rb"))) //ouvre le fichier
    	{
    		print("fichier pas ouvrable") ;
    		exit;
    	}
     
    	print("Taille du fichier : ") ;     //
    	print(filesize("./test.exe")) ;     // Affiche la taille du fichier
    	print(" octets <br><br>") ;         //
     
    	$taille = filesize("./test.exe") ;
    	$i = 0 ;
    	$enter = 0 ;
     
    	while($i <= $taille)   //Boucle affichant le fichier octets par octets
    	{
    		$octet = fread($file, 1) ;
    		printF("%08b ", $octet) ;
    		$i++ ;
     
    		if($enter == 11 ) { print("<br>") ; $enter = 0 ;} //passe à la ligne tout les 12 octets
    		else { $enter++ ; }
     
     
    	}
     
     
     
    ?>
    </body>
    </html>

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 223
    Par défaut
    Ca parait pas mal, après tu pourras toujours travailler la mise en forme si tu le souhaites.
    A mon avis tu es en droit de cliquer sur le bouton résolu qui se trouve en bas de ta page

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 172
    Par défaut
    Apparement ça a l'air de fonctionner, mais le résultat m'étonne quand même, j'ai testé sur plusieurs format de fichiers et le résultat est presque toujours le même, il y a majoritairement des 00000000.

    Je connais la programmation seulement pour faire des sites web mais je ne connais pas grand chose aux structures des fichiers.

    Je ne sais pas si PHP permet de travailler sur les fichiers aussi bien qu'un autre language comme le C.

    Si vous avez un avis à me donner là dessus, ou éventuellement un tuto qui m'aiderai à comprendre comment fonctionne les fichiers au niveau du système, je suis prenneur.

    Merci d'avance.

Discussions similaires

  1. [Débutant] Lire et afficher un fichier Excel
    Par MATHVIP dans le forum Interfaces Graphiques
    Réponses: 5
    Dernier message: 20/04/2015, 09h37
  2. Lire et afficher un fichier HTML en XML
    Par Ordinatueur dans le forum Android
    Réponses: 5
    Dernier message: 03/02/2013, 21h03
  3. Réponses: 19
    Dernier message: 16/02/2012, 19h50
  4. [Configuration] Lire et afficher un fichier PHP?
    Par Prosis dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 30/11/2007, 16h05
  5. Réponses: 4
    Dernier message: 15/03/2007, 11h13

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