Article View: be.comp.programming
Article #3510Re: [java] lezen van http server
From: TRAX
Date: Fri, 26 Dec 2003 15:07
Date: Fri, 26 Dec 2003 15:07
87 lines
3623 bytes
3623 bytes
Gebruik: java HttpTextBrowser http://www.google.be
CODE:
import java.io.*;
import java.net.*;
public class HttpTextBrowser {
public static void main(String[] args) throws IOException {
URL url = null;
String host = null;
int port = 0;
Socket c = null;
PrintWriter out = null;
BufferedReader input =null;
PrintWriter outputfile=null;
if( args.length != 1){
System.out.println("Usage : java HttpTextBrowser URL");
System.exit(1);
}
try {
/* Vul de variabelen url, host en port in met de informatie vanop de
commandolijn */
url = new URL(args[0]);
host = url.getHost();
port = url.getPort();
if (port<0) port = 80;
/* Maak een Socket aan met de correcte host en port */
c = new Socket(host,port);
/* Initialiseer de PrintWriter out, printwriter outputfile en
de BufferedReader input */
out = new PrintWriter(c.getOutputStream());
input = new BufferedReader(new InputStreamReader(c.getInputStream()));
outputfile = new PrintWriter(new FileWriter("tmp.html"), true);
}
/* Vang de mogelijke exceptions op, en stop het programma indien er
een exceptie optreedt */
catch (MalformedURLException e) {
System.err.println(e+ "\nURL is van de vorm http://<host>:<poort>");
System.exit(1);
}
catch (IOException e) {
System.err.println(e.getMessage());
System.exit(2);
}
catch (Exception e) {
System.err.println(e.getMessage());
System.exit(3);
}
/* Bouw de request string op, vergeet de \n\r niet ! */
String fromUser = "GET http://"+ host + url.getPath() + "
HTTP/1.1\r\nHost: "+ host+"\r\n\r\n";
System.out.print(fromUser);
out.print(fromUser);
out.flush();
/* Lees de inputstream zolang die niet null is */
String fromserver = input.readLine();
System.out.print(fromserver+"\r\n");
while ((fromserver=input.readLine()) != null){
System.out.print(fromserver+"\r\n");
outputfile.print(fromserver+"\r\n");
}
/* Sluit de out, input en output naar html bestand stroom en nadien de
socket */
out.close();
outputfile.close();
input.close();
c.close();
System.exit(0);
}
}
Technical Details
Message-ID:
<Q8YGb.97431$%f7.4404297@phobos.telenet-ops.be>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!fu-berlin.de!newsfeed.arcor-online.net!feed1.news.be.easynet.net!ossa.telenet-ops.be!phobos.telenet-ops.be.POSTED!not-for-mailReferences:
<pmKGb.96553$GJ5.4233348@phobos.telenet-ops.be> <3febe4f6$0$6930$ba620e4c@news.skynet.be> <gXWGb.97325$8e7.4369471@phobos.telenet-ops.be> <3fec418b$0$20078$ba620e4c@news.skynet.be> <eKXGb.97392$pg7.4421742@phobos.telenet-ops.be> <3fec4c77$0$30902$ba620e4c@news.skynet.be> <n3YGb.97422$kl7.4446344@phobos.telenet-ops.be>Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: fcea4,1a74d76b4dc52a6c X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2003-12-26 07:07:29 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!fu-berlin.de!newsfeed.arcor-online.net!feed1.news.be.easynet.net!ossa.telenet-ops.be!phobos.telenet-ops.be.POSTED!not-for-mail From: "TRAX" <Stijn.Verspeet@pandora[delete.this].be> Newsgroups: be.comp.programming References: <pmKGb.96553$GJ5.4233348@phobos.telenet-ops.be> <3febe4f6$0$6930$ba620e4c@news.skynet.be> <gXWGb.97325$8e7.4369471@phobos.telenet-ops.be> <3fec418b$0$20078$ba620e4c@news.skynet.be> <eKXGb.97392$pg7.4421742@phobos.telenet-ops.be> <3fec4c77$0$30902$ba620e4c@news.skynet.be> <n3YGb.97422$kl7.4446344@phobos.telenet-ops.be> Subject: Re: [java] lezen van http server Lines: 90 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Message-ID: <Q8YGb.97431$%f7.4404297@phobos.telenet-ops.be> Date: Fri, 26 Dec 2003 15:07:28 GMT NNTP-Posting-Host: 213.119.52.147 X-Complaints-To: abuse@telenet.be X-Trace: phobos.telenet-ops.be 1072451248 213.119.52.147 (Fri, 26 Dec 2003 16:07:28 MET) NNTP-Posting-Date: Fri, 26 Dec 2003 16:07:28 MET Organization: Telenet Internet