Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1500 connectés 

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Suivante
Auteur Sujet :

Aide ! Récupérer le langage binaire d'un fichier.

n°2074347
gilou
Modérateur
Modzilla
Posté le 06-05-2011 à 15:26:08  profilanswer
 

Reprise du message précédent :
Au cas ou, sur un gros fichier, tu atteindrais les limites de taille pour pack et unpack (je ne les connais pas), tu peux utiliser cette variante, qui découpe l'entrée en morceaux de taille fixe avant de faire la transformation (ici, j'ai fixé la taille de découpage à 4096 octets).

 
Code :
  1. #!/usr/bin/perl
  2. use strict;
  3. use warnings;
  4.  
  5. my $maxsize = 4096; # ou plus si ça passe
  6. my $line;
  7.  
  8. while (<> ) {
  9.  my $i = 0;
  10.  do {
  11.    $line = substr $_, $maxsize*$i, $maxsize;
  12.    print unpack("B*", pack("a*", $line));
  13.    ++$i;
  14.  } while ($maxsize*$i < length $_);
  15. }
 

A+,


Message édité par gilou le 06-05-2011 à 15:26:35

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
mood
Publicité
Posté le 06-05-2011 à 15:26:08  profilanswer
 

n°2074653
ElaxisP
Posté le 09-05-2011 à 10:09:44  profilanswer
 

Salut !
 
Le second script de gilou ne fonctionne pas (permission denied).
 
Avec le premier script, quand je veux récupérer le texte du terminal, je fais "exporter le texte". Ca me donne un fichier de 247 Mo impossible à ouvrir. J'aimerais savoir si il y avait une solution. A ce que j'ai compris, le deuxième script, que propose gilou, doit pallier à cela. Malheureusement cela ne fonctionne pas.

n°2074655
Paulp
~, sweet ~
Posté le 09-05-2011 à 10:18:41  profilanswer
 

shaoyin a écrit :

As-tu mis les droits d'exécution sur ton fichier ? Dans ton terminal, tape la commande :
chmod u+x /Users/ElaxisP/Desktop/binaire.pl
 
Puis refais une tentative.


...

n°2074661
ElaxisP
Posté le 09-05-2011 à 10:30:40  profilanswer
 

Désolé, j'avais oublié de rajouter cette ligne de code effectivement.

 

Le fichier texte est toujours impossible à traiter par contre.


Message édité par ElaxisP le 09-05-2011 à 10:35:40
n°2074663
Paulp
~, sweet ~
Posté le 09-05-2011 à 10:35:27  profilanswer
 

As-tu donné les droits d'exécution au fichier ?

n°2074664
ElaxisP
Posté le 09-05-2011 à 10:37:04  profilanswer
 

Pour les droits d'éxécution, je sais pas si c'est ce que tu dis, mais quand je lis les informations de la photo, j'ai Lecture et Ecriture.

n°2074677
shaoyin
Posté le 09-05-2011 à 11:06:33  profilanswer
 

Concernant le fichier résultat, tu n'as pas besoin d'avoir des droits d'éxécution dessus.
 
Pour récupérer le résultat dans un fichier, tu peux aussi utiliser le mécanisme de redirection : à la fin de ta commande pour traiter le fichier binaire, tu rajoutes le caractère ">" suivi du nom de ton fichier résultat (éventuellement avec le chemin complet, sinon, le fichier sera créé dans le répertoire courant).
 
Pour ce qui est de l'exploitation du fichier produit, c'est sûr qu'il n'y a pas beaucoup d'éditeurs capables de traiter un tel mastondonte.
 
Je suis un peu surpris quand même par la taille... Ton fichier image ne fait quand même pas 30 Mo ? Il y a peut-être un souci avec le script de gilou...

n°2074714
ElaxisP
Posté le 09-05-2011 à 11:43:52  profilanswer
 

Mon fichier fait 30,9 Mo. Il est en 300 dpi pour a peu près 20cm de largeur. Effectivement, quand je réduis en 72 dpi c'est carrément plus exploitable. J'imagine que c'est la seule solution.

n°2074718
gilou
Modérateur
Modzilla
Posté le 09-05-2011 à 11:46:43  profilanswer
 

Le fichier de sortie va faire 8 fois la taille du fichier d'entrée normalement.
 
Quel type de traitement veux tu y appliquer?
 
A+,


Message édité par gilou le 09-05-2011 à 11:48:26

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°2074722
shaoyin
Posté le 09-05-2011 à 11:52:36  profilanswer
 

Ah oui, alors s'il fait 30 Mo, ca explique la taille du fichier produit...

mood
Publicité
Posté le 09-05-2011 à 11:52:36  profilanswer
 

n°2074836
ElaxisP
Posté le 09-05-2011 à 17:49:55  profilanswer
 

J'aimerais pouvoir mettre le code dans un format correspondant au rapport de la photo (24x36), avec pour typographie OCR A et pour taille 5 ou 6 pt. et l'interlignage de 5 ou 6 pt aussi.

n°2074844
gilou
Modérateur
Modzilla
Posté le 09-05-2011 à 19:25:55  profilanswer
 

ça tiendra jamais, même en taille 5 ou 6 pts:
Tu as du 300 point/pouce donc 300 pts pour 2.5 cm environ, donc 120 pts pour 1 cm. si un point est en 32 bits couleurs, ça va faire 3840 caractères pour une ligne de 1 cm, d'ou 14 745 600 caractères rien que pour 1cm² de photo...
Bon, j'ai pris l'hypothèse d'une image non compressée, mais même avec une image compressée, ça fera bien trop de caractères au total.
 
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°2074882
ElaxisP
Posté le 10-05-2011 à 00:45:20  profilanswer
 

Nan mais de toute manière, avec une image à 300 dpi, je ne pouvais rien faire. En ayant réduit l'image à 72 dpi, j'ai pu coller le code dans un document InDesign, donc je suis très content. Maintenant, je n'ai plus qu'à trouver la meilleure résolution dont le code puisse rentrer dans un A3.
 
Merci beaucoup pour l'aide que vous m'avez apporté.

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Suivante

Aller à :
Ajouter une réponse
 

Sujets relatifs
envoi de gros fichier par socketUne question peut être bête : reconnaitre nombre binaire
Validation formulaire d'upload de fichier sans changer de pageaide choix cms svp urgent!
[Shell] lecture fichier configurationlecture d'un fichier .txt et retourner un tableau et une variable P,sv
aide script batchbesoin d'aide en C++ ou VB6 svp ma soutenance dans 20 jour :""(
Aide projet Web - recherche d'associésAide pour créer un script bot
Plus de sujets relatifs à : Aide ! Récupérer le langage binaire d'un fichier.


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR