Bei FTP Übertragung wird Datei nicht komplett übertragen

AlexGT

Neues Mitglied
Hallo zusammen,

dies ist mein erster Post.
Habe zu meinem Problem nichts passendes gefunden.
Wenn ich mit FTPClient von Apache eine Datei übertrage, wird nicht die komplette Datei übertragen sonden einige KB weniger.
z.B.
Größe Remotefile 353139 KB
Größe Localfile 353144 KB

Wenn ich die gleiche Datei auf den gleichen FTP-Server mit WinSCP übertrage ist diese komplett auf dem Server vorhanden.

Dies ist der Code den ich zum Test verwende

Java:
try {

//Holen der Dateigröße
File myFile = new File( localFile );
long sizeFile = myFile.length();
myFile = null;

FTPClient ftp = new FTPClient();

//Mit oder ohne Port unvollständige übertragung
    ftp.connect( host );

if ( FTPReply.isPositiveCompletion( ftp.getReplyCode() ) ) {
        if ( ftp.login( user, pw ) ) {

//Setzen der Optionen
ftp.setFileTransferMode( FTP.BINARY_FILE_TYPE );

System.out.println( "getReceiveDataSocketBufferSize " + ftp.getReceiveDataSocketBufferSize() );
System.out.println( "getSendDataSocketBufferSize " + ftp.getSendDataSocketBufferSize() );
System.out.println( "getBufferSize " + ftp.getBufferSize() );

System.out.println( ftp.getStatus() );

ftp.changeWorkingDirectory( "/" );

InputStream in = new FileInputStream( localFile );

System.out.println("Starte Übertragung von " + localFile + " mit " + sizeFile / 1024 + " KB");

if ( ftp.storeFile( remoteFile, in ) ) {
                System.out.println( "Upload erfolgreich: " + localFile + " -> " + remoteFile );
} else {
                System.out.println( "Status " + ftp.getReplyCode() + " - Upload fehlerhaft: " + localFile + " -> " + remoteFile );
}

System.out.println( "Größe Remotefile " + Long.parseLong( ftp.getSize( remoteFile ) ) / 1024 + " KB");
System.out.println( "Größe  Localfile " + sizeFile / 1024 + " KB");

System.out.println( ftp.getStatus() );

if ( ftp.logout() ) {
                System.out.println( "Logout erfolgreich " + ftp.getReplyString() );
} else {
                System.out.println( "Logout nicht erfolgreich " + ftp.getReplyString() );
}
            ftp.disconnect();
}
    }
} catch ( Exception e ) {
    System.out.println( e.getLocalizedMessage() );
}
===============
Das ist das Ergebniss

getReceiveDataSocketBufferSize 0
getSendDataSocketBufferSize 0
getBufferSize 0
211-Server status:
Transfer mode: ASCII
List mode: UNIX
Current number of users: 271
Maximum number of users: 8364
Idle timeout: 300 seconds
Hostname: zizzi
211 End of server status.

Starte Übertragung von U:/eNVenta/TestUpload.zip mit 353144 KB
Upload erfolgreich: U:/eNVenta/TestUpload.zip -> /TestUpload.zip
Größe Remotefile 353139 KB
Größe Localfile 353144 KB
211-Server status:
Transfer mode: ASCII
List mode: UNIX
Current number of users: 271
Maximum number of users: 8364
Idle timeout: 300 seconds
Hostname: zizzi
211 End of server status.

Logout erfolgreich 221 Goodbye.


Auch schon Buffersize geändert, Passiv oder aktive, Port hinzugefügt.
Andere Apache Version verwendet
Keine Besserung.

Vielleicht kann mir jemand von euch einen Rat geben.

Danke im vorraus

AlexGT
 
Zuletzt bearbeitet von einem Moderator:

KonradN

Super-Moderator
Mitarbeiter
Versuche mal, dein setFileTransferMode durch diese Zeilen zu ersetzen:
Java:
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
ftpClient.setFileTransferMode(FTP.STREAM_TRANSFER_MODE);

Edit: Nur noch zur Erläuterung: Apache Entwickler haben da einfach bei beiden Methoden ein int Parameter und int Konstanten. Du scheinst (so es kein Copy & Paste Fehler war) nun beim TransferMode ein FileType gesetzt. Wenn das funktioniert hätte, dann wäre es Zufall. Und das ist ein gutes Beispiel, wieso bei sowas eine Enum besser wäre - dann hätte man da zwei Enums und man kann nicht ein falschen Wert angeben ...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Echtzeit Audio Übertragung Netzwerkprogrammierung 2
M Socket Netzwerk Übertragung zwischen 4 Clients Netzwerkprogrammierung 2
A Client Client Übertragung Netzwerkprogrammierung 12
C Socket Datei Übertragung Netzwerkprogrammierung 5
J Socket UDP-Übertragung mit Flusskontrolle Netzwerkprogrammierung 8
T RMI Effizenteste Übertragung von Daten Netzwerkprogrammierung 6
B Variablen ausrichten für Übertragung Netzwerkprogrammierung 2
H Object Cast Problem nach Übertragung mit Log4j Netzwerkprogrammierung 5
C Problem mit Übertragung einer Klasse in RMI Netzwerkprogrammierung 10
J Problem bei Übertragung von Binärdateien Netzwerkprogrammierung 6
N HTML-Übertragung im lokalen Netzwerk mit Java - wie? Netzwerkprogrammierung 6
M Nur ASCII in URL, Umlautproblem bei Übertragung Netzwerkprogrammierung 10
B Übertragung via Sockets Netzwerkprogrammierung 12
OnDemand JMS Messages wird gecached Netzwerkprogrammierung 2
P RMI stub wird nicht gefunden Netzwerkprogrammierung 8
I Socket ObjectOutputStream-Socket: Objekt wird falsch übertragen Netzwerkprogrammierung 2
M com.google.gson wird nicht erkannt Netzwerkprogrammierung 2
F Website parsen, die mit javascript zusammengebaut wird Netzwerkprogrammierung 1
P Socket Server übertragung wird immer langsamer Netzwerkprogrammierung 4
A Socket Socket-Problem - Object wird nicht übertragen Netzwerkprogrammierung 3
M Client sendet nur, wenn das Socket geschlossen wird Netzwerkprogrammierung 53
L Server anpingen (Pingzeit) ?? Pingzeit wird nicht verändert Netzwerkprogrammierung 6
M JSP wird im gesamten Projekt nicht neugeladen Netzwerkprogrammierung 3
K Socket InputStream wird nicht erzeugt Netzwerkprogrammierung 4
R Socket SSL-Connect in Servlet - keystore wird nicht gefunden Netzwerkprogrammierung 2
S anderer Rechner wird nicht gefunden Netzwerkprogrammierung 20
M Problem Client - Server Sockets: .ready() wird nie true! Netzwerkprogrammierung 6
X Änderung des Objekts wird nicht serialisiert Netzwerkprogrammierung 9
M Socket TCP keep alive Exception wird nicht ausgelöst Netzwerkprogrammierung 11
F getSource Methode wird als Bot erkannt Netzwerkprogrammierung 8
Dit_ RMI setSoTimeout wird ignoriert? Netzwerkprogrammierung 3
lumo String[] wird zu null bei Serialisierung Netzwerkprogrammierung 8
J method = PUT, aber ausgeführt wird doGet...? Netzwerkprogrammierung 4
K Was wird genau per Telnet verschickt ? Netzwerkprogrammierung 5
M Dateidownload per FTP wird immer langsamer und bleibt dann stehen Netzwerkprogrammierung 3
J BufferedReader.ready() wird nicht true Netzwerkprogrammierung 10
A Socket BufferedReader.readLine() blockiert bis ein im Socket OutputStream was gesendet wird ... Netzwerkprogrammierung 9
C RMI Klasse wird unter falschem Pfad gesucht Netzwerkprogrammierung 4
B Server-Programm wird durch "read" beendet Netzwerkprogrammierung 8
A Socket Client Server Connection wird aufgebaut aber keine daten geschickt. Netzwerkprogrammierung 5
N Socket Verbindung wird immer verweigert Netzwerkprogrammierung 5
K HTTP-Anfrage an einen Server wird nicht beantwortet Netzwerkprogrammierung 3
M URL Handler wird nicht gefunden Netzwerkprogrammierung 6
L SSL Verbindung aber Server wird erst im Programm festgelegt Netzwerkprogrammierung 4
L Https Verbindung wird aus jar heraus nicht aufgebaut Netzwerkprogrammierung 12
C Download-Fortschritt wird falsch angezeigt. Netzwerkprogrammierung 2
A Quellcode von Homepage wird nicht komplett eingelesen Netzwerkprogrammierung 5
V RMI: code wird einfach übergangen ? Netzwerkprogrammierung 3
A FileChannel+SocketChannel:Datei wird nur teilweise übertrage Netzwerkprogrammierung 4
F Stream wird als Char übertragen. Char -> in String umwand Netzwerkprogrammierung 5
L RMI-Funktion wird lokal ausgeführt Netzwerkprogrammierung 12
A RMI: Wo wird die Methode ausgeführt? Netzwerkprogrammierung 9
P JNDI LDAP-SSL Verbindung, Zertifikat wird nicht angezeigt ? Netzwerkprogrammierung 2
A JavaMail Problem - Nachricht wird nicht versendet ? Netzwerkprogrammierung 9
T finlalize Methode vom Server wird nicht aufgerufen Netzwerkprogrammierung 4
B Socket wird nicht richtig geschlossen Netzwerkprogrammierung 2
K mapSystemException wird geworfen Netzwerkprogrammierung 2
L Attachment wird nicht angezeigt in der Email Netzwerkprogrammierung 3
P RMI - meine Stub-Class wird nicht gefunden Netzwerkprogrammierung 9
G Socket wird nach Portscann geschlossen Netzwerkprogrammierung 2
R Socket wird nicht ausgeführt Netzwerkprogrammierung 6
J Datei Download vom Server Netzwerkprogrammierung 8
H Datei mit Anhang via http "hochladen" Netzwerkprogrammierung 16
E JCIFS - Smb - Datei kann nur von einem Benutzer bearbeitet werden Netzwerkprogrammierung 1
Aruetiise Socket Datei Endung Netzwerkprogrammierung 6
A FTP wie kann ich von java auf datei in fpt://192.168.178.1 lesen/schreiben? Netzwerkprogrammierung 3
K HTTP Formulare füllen und Datei downloaden Netzwerkprogrammierung 23
B JSch Filetransfer ohne KnownHosts Datei? Netzwerkprogrammierung 0
A Datei erzeugen und auf der Weboberfläche downloaden (Tomcat) Netzwerkprogrammierung 4
Sogomn HTTP Datei herunterladen Netzwerkprogrammierung 13
C Inhalt einer .JPG Datei in einen OutputStream schreiben? Netzwerkprogrammierung 10
F FTP FTPClient Datei lässt sich nicht öffnen Netzwerkprogrammierung 4
F HTTP Serialisierte Objekte aus Datei von Server Netzwerkprogrammierung 1
T Anwendungseinstellungen ohne Datei übertragen? Netzwerkprogrammierung 8
F FTP Einzelne Datei von FTP-Server überprüfen Netzwerkprogrammierung 0
L FTP Lesen einer Datei vom Server - Aufgehangen Netzwerkprogrammierung 0
M jsf-seite beim hinzufügen einer csv-datei in einen ordner aktualiseren Netzwerkprogrammierung 0
D Einfache Verbindung zu Linux Server und Datei auslesen Netzwerkprogrammierung 13
S Datei(XML) per RMI an Server schicken Netzwerkprogrammierung 0
V Datei Download Fenster Netzwerkprogrammierung 9
S Datei schreiben über Applet Netzwerkprogrammierung 8
D Datei hochladen zu PHP Server Netzwerkprogrammierung 8
C Datei über Socket schreiben und Ereignis lesen Netzwerkprogrammierung 9
K HTTP Eigener Http Response für Datei-Download Netzwerkprogrammierung 4
D Socket Datei nur stückweise über Socket verschicken Netzwerkprogrammierung 6
T Datei downloaden ohne den Dateinamen zu kennen Netzwerkprogrammierung 2
H Datei in DropBox schreiben Netzwerkprogrammierung 23
N über Java in eine Text-Datei auf einem Server schreiben Netzwerkprogrammierung 2
V Datei auf Server Schreiben Netzwerkprogrammierung 18
N Einen Server als ausführbare Datei exportieren Netzwerkprogrammierung 15
N Problem über http eine Datei zu senden Netzwerkprogrammierung 4
B FTP Datei auslesen ohne einloggen möglich? Netzwerkprogrammierung 19
C Datei auf server speichern Netzwerkprogrammierung 16
P FTP Nochmal wachsende Datei per FTP lesen Netzwerkprogrammierung 9
W Datei automatisiert kopieren! Netzwerkprogrammierung 5
P Wachsende Datei per FTP lesen Netzwerkprogrammierung 2
U Datei über das Netzwerk einlesen und speichern Netzwerkprogrammierung 8
S Servlet - Datei kann nicht gelöscht werden Netzwerkprogrammierung 12
G Txt datei von Website downloaden Netzwerkprogrammierung 8
R HTTP Apache HTTP Client: Request mit angehängter Datei Netzwerkprogrammierung 2

Ähnliche Java Themen

Neue Themen


Oben