PDA

View Full Version : [JAVA]Controllare il tipo di file aperto


Maverick82^
03-07-2006, 11:41
Salve,

vorrei poter controllare che i file aperti dal mio programmino java siano dei file di testo(no doc rtf ecc.).I file possono essere anche senza estensione.
Credevo che ci fosse qualche metodo della classe File che mi avrebbe risolto questo problema, ma così non è stato..

Chiedo quindi una dritta :)

grazie a tutti

andbin
03-07-2006, 12:09
vorrei poter controllare che i file aperti dal mio programmino java siano dei file di testo(no doc rtf ecc.).I file possono essere anche senza estensione.
Credevo che ci fosse qualche metodo della classe File che mi avrebbe risolto questo problema, ma così non è stato..La caratteristica di essere un file di testo o non di testo (binario), dipende esclusivamente dal contenuto del file. In nessun linguaggio (almeno che io conosca) c'è una qualche funzione che dice se un file è di testo o no!

Poi c'è anche un'altra questione: tu dici "no doc rtf ecc..." ma un file in formato RTF .... è un file di testo!!!! Apri un file RTF con l'edit o con il blocco-note e vedrai che è testo puro, ovviamente formattato secondo le specifiche RTF.

Una cosa che si potrebbe fare è quella di leggere i primi N bytes del file e fare una statistica per valutare se c'è solo del testo o ci sono dei codici come 00h, ecc...

thebol
03-07-2006, 12:26
su linux esiste il magic number. Se non ricordo male è il primo carattere che comunica il tipo di file.

Pero non so quanto sia sicuro da usare, e se sia usato anche in win...