Hallöle,
ich hab da mal eine Frage.
Ich hab mir ein kleines Programm gebastelt, welches Datan von einem
Server herunterladen soll. Dabei handelt es sich um eine Zip-Datei.
Die Datei wird auch heruntergeladen aber ich kann sie dann nicht öffnen.
WinZip/WinRar sagen, dass die Datei korrupt ist.
Wenn ich die Datei jetzt mit meinem Browser herunterlade und beide Dateien
im Editor vergleiche, dann sehe ich dass in der Datei die ich mit meinem Programm
gedownloaded habe manche Zeichen nicht richtig drin stehen... stattdessen stehen
dort Fragezeichen.
Muss ich die Daten irgendwie anders einlesen oder schreiben???
Binär oder so?
Hier der Quellcode:
Achso und dankeschön im Voraus!
ich hab da mal eine Frage.
Ich hab mir ein kleines Programm gebastelt, welches Datan von einem
Server herunterladen soll. Dabei handelt es sich um eine Zip-Datei.
Die Datei wird auch heruntergeladen aber ich kann sie dann nicht öffnen.
WinZip/WinRar sagen, dass die Datei korrupt ist.
Wenn ich die Datei jetzt mit meinem Browser herunterlade und beide Dateien
im Editor vergleiche, dann sehe ich dass in der Datei die ich mit meinem Programm
gedownloaded habe manche Zeichen nicht richtig drin stehen... stattdessen stehen
dort Fragezeichen.
Muss ich die Daten irgendwie anders einlesen oder schreiben???
Binär oder so?
Hier der Quellcode:
Achso und dankeschön im Voraus!
Code:
package general;
import java.net.*;
import java.io.*;
public class Client {
URL url;
File target;
public Client(URL url){
this.url = url;
//Erstellt die passenden Ordner wo die Datei reingehört
target = new File("d:\\downloader\\" + url.getPath());
target.getParentFile().mkdirs();
download();
}
public void download(){
System.out.println("Beginne mit Download...");
try{
FileWriter fw = new FileWriter(target);
HttpURLConnection huc;
huc = (HttpURLConnection)url.openConnection();
InputStream is = huc.getInputStream();
int len;
byte b;
while ( (len = is.read()) != -1) {
fw.write((char)len);
}
fw.flush();
huc.disconnect();
System.out.println("Fertig mit Download");
}
catch(IOException e){
System.err.println("IOException");
System.err.println(e.getMessage());
}
}
public static void main(String[]args){
// String urlPath = "http://team-peter.clanintern.de/filecopy/a.txt";
String urlPath = "http://fileserver.simszone.de/sims2/files/clothes/clothes2191.zip";
try{
new Client(new URL(urlPath));
}
catch(MalformedURLException e){
System.err.println("MalformedURLException");
}
}
}