- package net.java2000.net;
- import java.io.BufferedReader;
- import java.io.BufferedWriter;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import java.io.OutputStreamWriter;
- import java.net.InetAddress;
- import java.net.Socket;
- /**
- * 通过Socket写入数据,并读取返回结果。
- *
- * @author 赵学庆,Java世纪网(java2000.net)
- *
- */
- public class SocketWrite {
- /**
- * @param args
- */
- public static void main(String[] args) {
- try {
- // 创建连接
- InetAddress addr = InetAddress.getByName("www.java2000.net");
- int port = 80;
- Socket socket = new Socket(addr, port);
- // 写入数据
- BufferedWriter wr = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream(),
- "UTF-8"));
- wr.write("GET /test.jsp HTTP/1.1\r\n");
- wr.write("Host: <a target="_blank" href="www.java2000.net">www.java2000.net</a>\r\n");
- wr.write("\r\n");
- wr.flush();
- // 创建读取数据的Reader,里面指定了需要的编码类型。
- BufferedReader rd = new BufferedReader(new InputStreamReader(socket.getInputStream(),
- "UTF-8"));
- // 读取每一行的数据.注意大部分端口操作都需要交互数据。
- String str;
- while ((str = rd.readLine()) != null) {
- System.out.println(str);
- }
- rd.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
运行结果
HTTP/1.1 200 OK
Date: Sat, 30 Aug 2008 23:33:29 GMT
Server: Apache/2.2.4 (Win32) mod_jk/1.2.26
Vary: Host,Accept-Encoding
Set-Cookie: JSESSIONID=461C1DD78578EA39A1BBFD114F0BC2F3; Path=/
Content-Length: 220
Content-Type: text/html;charset=UTF-8
<!-- 测试页内容开始 -->
这里是JAVA世纪网,java2000.net。老紫竹欢迎你的光临。
本站以提供高质量的,验证过的JAVA代码,资料和项目为目标。
<!-- 测试页内容结束 -->
总结:
此文涉及到了HTTP协议的部分知识,请自行查找相关的资料。
原文: http://www.java2000.net/p9149
更多代码,请访问 http://code.java2000.net
<script type="text/javascript"> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"> </script>