Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce
Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce
REDMI Note 17 Pro porta in fascia media una batteria da 8.340 mAh con ricarica HyperCharge a 67W, un display AMOLED da 6,83 pollici capace di picchi di luminosità molto elevati e una struttura certificata TÜV SÜD contro cadute e infiltrazioni d'acqua, il tutto racchiuso in una scocca da 223 grammi. Lo abbiamo provato per diversi giorni tra fotocamera, prestazioni, autonomia e prezzo sul mercato italiano
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra integra un sensore da 1 pollice 8K, ottiche Leica e triplo chip IA. Tra schermo OLED rimovibile, workflow I-Log a 10 bit e stabilizzazione a tre assi, analizziamo le doti tecniche di una gimbal camera pensata per i professionisti
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 07-04-2010, 14:14   #1
Craving
Member
 
L'Avatar di Craving
 
Iscritto dal: Mar 2002
Città: Padova
Messaggi: 119
Problemi con FTPClient di apache commons

Ciao, sto scrivendo un programma Java che deve uploadare dei file via FTP.
Sto usando l'FTPClient di apache commons (org.apache.commons.net.ftp.FTPClient) e ho un problemino:
quando viene uploadato un file non so se è un file di testo o immagine o cosa, quindi non so se impostare come file type BINARE_FILE_TYPE o ASCII_FILE_TYPE o cos'altro. Come potrei fare?

Grazie!
Craving è offline   Rispondi citando il messaggio o parte di esso
Old 07-04-2010, 16:04   #2
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Di default (in quella libreria) è ASCII_FILE_TYPE.

Io a suo tempo ho utilizzato la libreria ftp4j e lì l'equivalente della classe FTPClient oltre ad avere la modalità testuale e quella binaria, metteva a disposizione una modalità "automatica" (di default, tra l'altro).

In quella modalità si arrangiava il client a stabilire, di volta in volta, che modalità di trasferimento dati avrebbe usato. In pratica il client si appoggiava a una classe che implementava una sorta di riconoscitore di estensioni con i quale valuare se un dato tipo di file, stabilito dalla sua estensione, andasse trasferito in modalità testuale o binaria.

In ftp4j la classe che implementa il riconosictore di estensioni testuali di default (perchè poi sei sempre libero di difinirtene uno custom) considerava come file testuali (e quindi impostava la modalità di trasferimento con il server di conseguenza) tutti i file con le seguenti estensioni:
Codice:
abc acgi aip asm asp c c cc cc com conf cpp
csh css cxx def el etx f f f77 f90 f90 flx
for for g h h hh hh hlb htc htm html htmls
htt htx idc jav jav java java js ksh list
log lsp lst lsx m m mar mcf p pas php pl pl
pm py rexx rt rt rtf rtx s scm scm sdml sgm
sgm sgml sgml sh shtml shtml spc ssi talk
tcl tcsh text tsv txt uil uni unis uri uris
uu uue vcs wml wmls wsc xml zsh
Cosa che per le mie esigenze andava benissimo.

Non so come normalmente ci si regoli, ma magari puoi fare una cosa analoga.
__________________

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
Old 07-04-2010, 16:34   #3
Craving
Member
 
L'Avatar di Craving
 
Iscritto dal: Mar 2002
Città: Padova
Messaggi: 119
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) ? Se io imposto la modalità di trasferimento SEMPRE binary, i file testuali si modificano?
Craving è offline   Rispondi citando il messaggio o parte di esso
Old 07-04-2010, 17: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
Old 08-04-2010, 07:11   #5
Craving
Member
 
L'Avatar di Craving
 
Iscritto dal: Mar 2002
Città: Padova
Messaggi: 119
Sicuramente un riconoscitore serio analizza il contenuto. In prima implementazione mi accontenterò di vedere l'estensione.
Sembra però che FTPClient di apache commons non trasferisca in in binary i file anche se gli imposto
Codice:
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
, infatti quando trasferisco un'immagine quella risultante ha dimensioni diverse . Mhmm qualche idea?
Craving è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce Recensione REDMI Note 17 Pro: il midrange con ba...
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema Insta360 Luna Ultra: la potenza del sensore da 1...
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
iPhone Duo, il debutto del pieghevole di...
Atlas 960E SuperPoD, la risposta di Huaw...
IA militare e nucleare: esperti USA e ci...
Dieci mini-reattori nucleari in Europa d...
CONTROL Resonant su PC: Path Tracing, Ra...
ColorOS 17 arriva su circa 90 dispositiv...
GTA VI, il multiplayer potrebbe debuttar...
Aggiornamento KB5002914 rompe Excel: ecc...
Processo Huawei a Brooklyn: l'FBI mostra...
WhatsApp introduce nuovi temi per le cha...
NVIDIA, Google e Emerald AI uniscono le ...
iPhone 18 Pro Max, il test sulla vapor c...
Fine estate in giardino: le proposte sco...
Batterie allo stato solido dietro l'ango...
Gears of War: E-Day raggiunge la fase Go...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 16:20.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v