View Single Post
Old 07-04-2010, 18:42   #4
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da Craving Guarda i messaggi
Se io imposto la modalità di trasferimento SEMPRE binary, i file testuali si modificano?
Estratto dal manule di ftp4j:
Quote:
Quando un trasferimento è binario il file viene trattato da ambo le parti come una sequenza binaria, cioè un flusso di byte, e viene registrato da chi lo riceve così come gli è arrivato, senza analisi o manipolazioni dei dati ricevuti. Quando un trasferimento è testuale, al contrario, ambo le parti possono applicare delle trasformazioni di charset. Si immagini di avere un client in esecuzione su una piattaforma Windows, mentre il server gira su un sistema UNIX. Normalmente i charset usati dalle due piattaforme sono diversi. Il client deve inviare al sito remoto un file dai contenuti testuali. Scegliendo il trasferimento testuale il client leggerà il file supponendo che i suoi contenuti siano stati codificati secondo il charset predefinito della macchina che lo esegue. Il contenuto del file sarà decodificato e ricodificato in una codifica intermedia. Il server riceverà i dati nella codifica intermedia, e sarà suo compito riconvertirli secondo il charset predefinito della propria macchina. Se i charset di partenza e di destinazione sono differenti la sequenza di byte che compone il file trasferito sarà molto probabilmente cambiata, ma il contenuto rimarrà lo stesso e la leggibilità mantenuta.
Altre letture qui e qui che in pratica non fanno altro che ribadire il concetto.


Quote:
Originariamente inviato da Craving
Si, ci si metterebbe anche pochissimo a fare un riconoscitore del genere, però chi mi garantisce di beccarmi tutti i casi (per esempio i file di properties non sono presenti nell'elenco)?
Aggiungi tutte le estensioni che vuoi all'elenco.
Immagino che in software "di spessore" il riconoscimento del tipo di file si faccia non solo esaminando la sua estensione, ma forse con qualche euristica esaminandone il contenuto.
__________________

As long as you are basically literate in programming, you should be able to express any logical relationship you understand.
If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it.
(Chris Crawford)
banryu79 è offline   Rispondi citando il messaggio o parte di esso