Results 1 to 1 of 1
-
Reading Web Pages with Socket Channels
This Java tip shows how to read a web server response using Socket channels in Java.
Java Code:import java.io.IOException; import java.net.InetSocketAddress; import java.net.UnknownHostException; import java.nio.ByteBuffer; import java.nio.CharBuffer; import java.nio.channels.SocketChannel; import java.nio.charset.Charset; import java.nio.charset.CharsetDecoder; import java.nio.charset.CharsetEncoder; public class GetWebPageDemo { public static void main(String args[]) throws Exception { String resource, host, file; int slashPos; resource = "www.java-forums.org"; slashPos = resource.indexOf('/'); // find host/file separator if (slashPos < 0) { resource = resource + "/"; slashPos = resource.indexOf('/'); } file = resource.substring(slashPos); // isolate host and file parts host = resource.substring(0, slashPos); System.out.println("Host to contact: '" + host + "'"); System.out.println("File to fetch : '" + file + "'"); SocketChannel channel = null; try { Charset charset = Charset.forName("ISO-8859-1"); CharsetDecoder decoder = charset.newDecoder(); CharsetEncoder encoder = charset.newEncoder(); ByteBuffer buffer = ByteBuffer.allocateDirect(1024); CharBuffer charBuffer = CharBuffer.allocate(1024); InetSocketAddress socketAddress = new InetSocketAddress(host, 80); channel = SocketChannel.open(); channel.connect(socketAddress); String request = "GET " + file + " \r\n\r\n"; channel.write(encoder.encode(CharBuffer.wrap(request))); while ((channel.read(buffer)) != -1) { buffer.flip(); decoder.decode(buffer, charBuffer, false); charBuffer.flip(); System.out.println(charBuffer); buffer.clear(); charBuffer.clear(); } } catch (UnknownHostException e) { System.err.println(e); } catch (IOException e) { System.err.println(e); } finally { if (channel != null) { try { channel.close(); } catch (IOException ignored) { } } } System.out.println("\nDone."); } }
Similar Threads
-
Socket
By vortex in forum New To JavaReplies: 2Last Post: 05-25-2008, 06:41 AM -
Reading Web Pages with Nonblocking Channels
By Java Tip in forum java.netReplies: 0Last Post: 04-07-2008, 08:01 PM -
Reading Web Pages with Streams
By Java Tip in forum java.netReplies: 0Last Post: 04-07-2008, 07:59 PM -
JSP pages with no caching
By Java Tip in forum Java TipReplies: 0Last Post: 01-31-2008, 12:53 PM -
XML through a socket
By Heather in forum XMLReplies: 2Last Post: 07-04-2007, 09:31 AM


LinkBack URL
About LinkBacks
Reply With Quote
Bookmarks