Ciao a tutti,
Esiste in C una funzione che mi converte un file creato di tipo binario in formato ASCII?
Grazie
Ciao a tutti,
Esiste in C una funzione che mi converte un file creato di tipo binario in formato ASCII?
Grazie
Dato che non esiste un "file di tipo binario", la domanda deve essere formulata nuovamente con maggiori dettagli ...
Mi scuso per la terminologia non proprio tecnica. Dovrei convertire un file in modo che abbia una struttura tale che il suo contenuto possa essere letto con un editor di testo qualsiasi.
Ma che intendi esattamente per "formato binario"?Originariamente inviato da luca_d
Mi scuso per la terminologia non proprio tecnica. Dovrei convertire un file in modo che abbia una struttura tale che il suo contenuto possa essere letto con un editor di testo qualsiasi.
Svegliati, Neo. Matrix ti possiede...
Si ma quasto file contiene effettivamente solo caratteri ascii, cioè solo stringhe di testo e spazi in sostanza? Oppure contiene anche dati come valori numerici o altro?Nel secondo caso non ha molto senso fare ciò che stai cercando di fare, nel primo l'editor di testo dovrebbe aprirlo già senza problemi se si tratta di "plain text".Come e da cosa è stato creato il file? Se per esempio è in un formato binario proprietario (as esempio quello di word), devi conoscere l'algoritmo di codifica. Facci sapereOriginariamente inviato da luca_d
Ciao a tutti,
Esiste in C una funzione che mi converte un file creato di tipo binario in formato ASCII?
Grazie
Il centro dell'attenzione non è sempre un buon posto in cui trovarsi
Mai discutere con uno stupido, la gente potrebbe non capire la differenza. (O. W.)
La definizione della strttura del file nel programma è la seguente:
#define LETTURE "letture.dat", sizeof(lett)
se apro il file con un editor (es edit di DOS) ecco che cosa leggo:
8000133000412
grazie per l'aiuto
Non hai aggiunto molto ...
La define e' inutile rispetto a quanto ti e' stato chiesto.
Quello che leggi dall'editor (a giudicare dai caratteri non visualizzabili) significa che il tuo file NON contiene unicamente caratteri ASCII leggibili ...
Quindi, tornando alla domanda iniziale, non puoi trasformare in ASCII cio' che non e' visualizzabile secondo il codice ASCII ... a meno che tu non voglia vedere il valore esadecimale di ogni byte del file ...
Per intenderci, se nel file c'e' scritto il carattere A allora questo puo' essere visualizzato come
A
oppure come
0x41
che e' il corrispondente esadecimale della A.
Ma se c'e' un carattere di controllo come Escape, questo non puo' essere visualizzato come ASCII (e' appunto tra quelli non visualizzabili) ma solamente in esadecimale, ovvero
0x1B
Quindi, vuoi scegliere la strada dell'esadecimale ?