Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2016
    Messaggi
    89

    come leggere un file in formato binario...

    ho bisogno di leggere un qualunque tipo di file (jpg, exe, png, zip, ecc) in formato binario ovvero 010100100011 per poi poter ricostruire il file dal codice binario...
    Non chiedetemi a cosa mi serve perchè lo devo assolutamente sapere...
    Non ha importanza il linguaggio usato per fare ciò, mi basta ottenere una risposta per vedere il codice binario di un qualunque file, se avete una soluzione ditemela con il linguaggio di programmazione che volete...
    Grazie Mille

  2. #2
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,590
    In (praticamente) qualsiasi linguaggio la funzione che apri i file accetta dei parametri per specificare la modalità.
    Supponendo tu stia usando C++ dato il post precedente http://www.cplusplus.com/doc/tutorial/files/
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2016
    Messaggi
    89
    ti ringrazio della risposta, ho già provato aprendo il file ma non ho un codice binario ma serie di caratteri a caso...
    quello che ho bisogno di fare è un po complesso ovvero avere il "codice binario" di un qualsiasi file per poi poterlo ricreare tramite assemblatore binario. Per esempio, se ho un immagine "png" copio il codice binario dell'immagine, lo incollo in un assemblatore binario e lo salvo come "png" e vorrei avere clonato la stessa immagine...
    Se mi sono spiegato credo sia una cosa fattibile, ma non riesco a capire come ottenere una lista di 0 e 1 da un qualsiasi file.
    Qualche idea?

  4. #4
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,590
    Il punto non è cos'hai, il punto è cosa stampi. Se stampi i byte come caratteri vengono stampati come caratteri.
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2016
    Messaggi
    89
    ora lasciano stare il programma, è possibile vedere il codice che compone un file? Se ho un immagine.png, posso trovare un qualunque codice che compone essa? Così quando apro un file di testo e salvo il codice come immagine.png mi crea un clone dell'immagine? se si come faccio a trovare questo codice?

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2016
    Messaggi
    89
    dovrei aver risolto

  7. #7
    Come al solito sulla questione dei "file binari" si fa grossa confusione... si parla di file "binari" per dire che non sono file di testo ASCII, per cui aprendoli (ad esempio) con notepad non ci troverai granché di "leggibile", ma è comunque un nome del cavolo, alla fine tutti i file sono semplicemente sequenze di byte (=numeri a 8 bit); se apri un'immagine con notepad vedrai i suoi byte interpretati come caratteri (senza senso, visto che i byte di un'immagine non sono pensati per essere interpretati come caratteri), se la apri con un editor esadecimale li vedrai come successione di byte espressi in esadecimale (quindi ne vedi il valore numerico, espresso in base 16 per comodità), se la apri con un visualizzatore di immagini questo interpreterà i byte per farti vedere a schermo l'immagine. Come ti è stato detto, i byte sono byte, quello che conta è come li interpreti; se uno si vuole particolarmente male li può anche vedere in binario, ma in genere non è particolarmente interessante (di solito i formati di file "binari" sono composti da campi fatti da sequenze di byte singoli o di interi da 2 o 4 byte, anche se ci sono importanti eccezioni, specie nei formati compressi).

    Per venire alla tua domanda dell'altro thread, lo strumento "generico" che si usa per "guardare" dentro a file cosiddetti "binari" è il sopracitato editor esadecimale; ce n'è tanti, io di solito uso Okteta, che però è per Linux; su Windows ai tempi usavo HxD, anche se gli manca quasi completamente la parte di decoding anche solo degli interi; guardando un po' cosa c'è in giro adesso, mi sembra che HexEdit sia un ottimo tool (e ha anche inclusi un po' di helper di decodifica di formati diffusi, che possono essere istruttivi).
    Ultima modifica di MItaly; 11-12-2016 a 18:34
    Amaro C++, il gusto pieno dell'undefined behavior.

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2016
    Messaggi
    89
    grazie mille per la risposta dettagliata, mi sapresti dire come fare un programma (possibilmente c# ma va bene anche qualunque altro linguaggio...) che faccia la stessa cosa? che mi registra in una stringa il codice esadecimale di un file, dopo di che inserisco l'estensione con cui voglio salvare il file e me lo crea?
    Avrei bisogno di un esempio di programma di tipo Console (programma non grafico) per capire meglio la sintassi e il ragionamento...

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2016
    Messaggi
    89
    Risolto!!!!! Grazie mille a tutti!!!!!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.