Wenn ich mit dem untenstehenden Programm versuche eine txt-Datei aus dem I-net zu laden, kammt immer ein Bad Request, weil ich angeblich keinen Host mitsende. Wie soll ich das machen???
Code:
import java.io.*;
import java.net.*;
public class Dateiload {
public static void main(String[] args) {
if(args.length != 2){
System.out.println("usage: java Quelltextdieb <host> <file>");
System.exit(0);
}
try{
String datei = "GET " + args[1] + " HTTP/1.0" + "\r\n\r\n";;
int b;
Socket sok = new Socket(args[0], 80);
System.out.println("Socket erstellt");
InputStream input= sok.getInputStream();
System.out.println("Inputstream erstellt");
OutputStream output = sok.getOutputStream();
System.out.println("Outputstream erstellt");
output.write(datei.getBytes());
System.out.println("Anfrage abgeschickt");
System.out.println();
System.out.println();
int i=0;
datei="";
while((b = input.read()) != -1){
System.out.write((char)b);
/*if(i==1000){
break;
}*/
i++;
}
sok.close();
input.close();
output.close();
}
catch(IOException e){
System.out.println("Fehler beim lesen der Datei");
}
catch(Exception e){
System.out.println("unbekannter Fehler");
}
}
}