<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://www.jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2FNetwork%2FSocket</id>
		<title>Java Tutorial/Network/Socket - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://www.jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2FNetwork%2FSocket"/>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java_Tutorial/Network/Socket&amp;action=history"/>
		<updated>2026-04-22T01:29:31Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.jexp.ru/index.php?title=Java_Tutorial/Network/Socket&amp;diff=4636&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java_Tutorial/Network/Socket&amp;diff=4636&amp;oldid=prev"/>
				<updated>2010-06-01T05:03:55Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 05:03, 1 июня 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://www.jexp.ru/index.php?title=Java_Tutorial/Network/Socket&amp;diff=4635&amp;oldid=prev</id>
		<title> в 17:44, 31 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java_Tutorial/Network/Socket&amp;diff=4635&amp;oldid=prev"/>
				<updated>2010-05-31T17:44:27Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==  A Thin SMTP Client ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.io.DataInputStream;&lt;br /&gt;
import java.io.DataOutputStream;&lt;br /&gt;
import java.net.Socket;&lt;br /&gt;
import java.text.DateFormat;&lt;br /&gt;
import java.util.Date;&lt;br /&gt;
import java.util.Locale;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] args) throws Exception {&lt;br /&gt;
    String host = &amp;quot;host&amp;quot;;&lt;br /&gt;
    int port = 25;&lt;br /&gt;
    String from = &amp;quot;from@from.net&amp;quot;;&lt;br /&gt;
    String toAddr = &amp;quot;to@to.net&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
    Socket servSocket = new Socket(host, port);&lt;br /&gt;
    DataOutputStream os = new DataOutputStream(servSocket.getOutputStream());&lt;br /&gt;
    DataInputStream is = new DataInputStream(servSocket.getInputStream());&lt;br /&gt;
    if (servSocket != null &amp;amp;&amp;amp; os != null &amp;amp;&amp;amp; is != null) {&lt;br /&gt;
      os.writeBytes(&amp;quot;HELO\r\n&amp;quot;);&lt;br /&gt;
      os.writeBytes(&amp;quot;MAIL From:&amp;quot; + from + &amp;quot; \r\n&amp;quot;);&lt;br /&gt;
      os.writeBytes(&amp;quot;RCPT To:&amp;quot; + toAddr + &amp;quot;\r\n&amp;quot;);&lt;br /&gt;
      os.writeBytes(&amp;quot;DATA\r\n&amp;quot;);&lt;br /&gt;
      os.writeBytes(&amp;quot;X-Mailer: Java\r\n&amp;quot;);&lt;br /&gt;
      os.writeBytes(&amp;quot;DATE: &amp;quot; + DateFormat.getDateInstance(DateFormat.FULL, Locale.US).format(new Date()) + &amp;quot;\r\n&amp;quot;);&lt;br /&gt;
      os.writeBytes(&amp;quot;From:&amp;quot; + from + &amp;quot;\r\n&amp;quot;);&lt;br /&gt;
      os.writeBytes(&amp;quot;To:&amp;quot; + toAddr + &amp;quot;\r\n&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
    os.writeBytes(&amp;quot;Subject:\r\n&amp;quot;);&lt;br /&gt;
    os.writeBytes(&amp;quot;body\r\n&amp;quot;);&lt;br /&gt;
    os.writeBytes(&amp;quot;\r\n.\r\n&amp;quot;);&lt;br /&gt;
    os.writeBytes(&amp;quot;QUIT\r\n&amp;quot;);&lt;br /&gt;
    String responseline;&lt;br /&gt;
    while ((responseline = is.readUTF()) != null) { &lt;br /&gt;
      if (responseline.indexOf(&amp;quot;Ok&amp;quot;) != -1)&lt;br /&gt;
        break;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Cipher Socket ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
 * JBoss, Home of Professional Open Source.&lt;br /&gt;
 * Copyright 2008, Red Hat Middleware LLC, and individual contributors&lt;br /&gt;
 * as indicated by the @author tags. See the copyright.txt file in the&lt;br /&gt;
 * distribution for a full listing of individual contributors.&lt;br /&gt;
 *&lt;br /&gt;
 * This is free software; you can redistribute it and/or modify it&lt;br /&gt;
 * under the terms of the GNU Lesser General Public License as&lt;br /&gt;
 * published by the Free Software Foundation; either version 2.1 of&lt;br /&gt;
 * the License, or (at your option) any later version.&lt;br /&gt;
 *&lt;br /&gt;
 * This software is distributed in the hope that it will be useful,&lt;br /&gt;
 * but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU&lt;br /&gt;
 * Lesser General Public License for more details.&lt;br /&gt;
 *&lt;br /&gt;
 * You should have received a copy of the GNU Lesser General Public&lt;br /&gt;
 * License along with this software; if not, write to the Free&lt;br /&gt;
 * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA&lt;br /&gt;
 * 02110-1301 USA, or see the FSF site: http://www.fsf.org.&lt;br /&gt;
 */&lt;br /&gt;
import java.io.InputStream;&lt;br /&gt;
import java.io.IOException;&lt;br /&gt;
import java.io.OutputStream;&lt;br /&gt;
import java.net.Socket;&lt;br /&gt;
import java.util.Arrays;&lt;br /&gt;
import javax.crypto.Cipher;&lt;br /&gt;
import javax.crypto.CipherInputStream;&lt;br /&gt;
import javax.crypto.CipherOutputStream;&lt;br /&gt;
import javax.crypto.spec.IvParameterSpec;&lt;br /&gt;
import javax.crypto.SecretKey;&lt;br /&gt;
/**&lt;br /&gt;
 *&lt;br /&gt;
 * @author  Scott.Stark@jboss.org&lt;br /&gt;
 */&lt;br /&gt;
public class CipherSocket extends Socket&lt;br /&gt;
{&lt;br /&gt;
   private Cipher cipher;&lt;br /&gt;
   private Socket delegate;&lt;br /&gt;
   String algorithm;&lt;br /&gt;
   SecretKey key;&lt;br /&gt;
   /** Creates a new instance of CipherSocket */&lt;br /&gt;
   public CipherSocket(String host, int port, String algorithm, SecretKey key)&lt;br /&gt;
      throws IOException&lt;br /&gt;
   {&lt;br /&gt;
      super(host, port);&lt;br /&gt;
      this.algorithm = algorithm;&lt;br /&gt;
      this.key = key;&lt;br /&gt;
   }&lt;br /&gt;
   public CipherSocket(Socket delegate, String algorithm, SecretKey key)&lt;br /&gt;
      throws IOException&lt;br /&gt;
   {&lt;br /&gt;
      this.delegate = delegate;&lt;br /&gt;
      this.algorithm = algorithm;&lt;br /&gt;
      this.key = key;&lt;br /&gt;
   }&lt;br /&gt;
   public InputStream getInputStream() throws IOException&lt;br /&gt;
   {&lt;br /&gt;
      InputStream is = delegate == null ? super.getInputStream() : delegate.getInputStream();&lt;br /&gt;
      Cipher cipher = null;&lt;br /&gt;
      try&lt;br /&gt;
      {&lt;br /&gt;
         cipher = Cipher.getInstance(algorithm);&lt;br /&gt;
         int size = cipher.getBlockSize();&lt;br /&gt;
         byte[] tmp = new byte[size];&lt;br /&gt;
         Arrays.fill(tmp, (byte)15);&lt;br /&gt;
         IvParameterSpec iv = new IvParameterSpec(tmp);&lt;br /&gt;
         cipher.init(Cipher.DECRYPT_MODE, key, iv);&lt;br /&gt;
      }&lt;br /&gt;
      catch(Exception e)&lt;br /&gt;
      {&lt;br /&gt;
         e.printStackTrace();&lt;br /&gt;
         throw new IOException(&amp;quot;Failed to init cipher: &amp;quot;+e.getMessage());&lt;br /&gt;
      }&lt;br /&gt;
      CipherInputStream cis = new CipherInputStream(is, cipher);&lt;br /&gt;
      return cis;&lt;br /&gt;
   }&lt;br /&gt;
   public OutputStream getOutputStream() throws IOException&lt;br /&gt;
   {&lt;br /&gt;
      OutputStream os = delegate == null ? super.getOutputStream() : delegate.getOutputStream();&lt;br /&gt;
      Cipher cipher = null;&lt;br /&gt;
      try&lt;br /&gt;
      {&lt;br /&gt;
         cipher = Cipher.getInstance(algorithm);&lt;br /&gt;
         int size = cipher.getBlockSize();&lt;br /&gt;
         byte[] tmp = new byte[size];&lt;br /&gt;
         Arrays.fill(tmp, (byte)15);&lt;br /&gt;
         IvParameterSpec iv = new IvParameterSpec(tmp);&lt;br /&gt;
         cipher.init(Cipher.ENCRYPT_MODE, key, iv);&lt;br /&gt;
      }&lt;br /&gt;
      catch(Exception e)&lt;br /&gt;
      {&lt;br /&gt;
         throw new IOException(&amp;quot;Failed to init cipher: &amp;quot;+e.getMessage());&lt;br /&gt;
      }&lt;br /&gt;
      CipherOutputStream cos = new CipherOutputStream(os, cipher);&lt;br /&gt;
      return cos;&lt;br /&gt;
   }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Create a socket ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.io.IOException;&lt;br /&gt;
import java.net.Socket;&lt;br /&gt;
import java.net.UnknownHostException;&lt;br /&gt;
public class MainClass {&lt;br /&gt;
  public static void main(String args[]) {&lt;br /&gt;
    try {&lt;br /&gt;
      Socket socket = new Socket(&amp;quot;192.2.1.168&amp;quot;, 23);&lt;br /&gt;
    } catch (UnknownHostException e) {&lt;br /&gt;
      System.out.println(e);&lt;br /&gt;
    } catch (IOException e2) {&lt;br /&gt;
      System.out.println(e2);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Create Socket by IP address and port number ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.net.Socket;&lt;br /&gt;
public class MainClass {&lt;br /&gt;
  public static void main(String[] args) throws Exception {&lt;br /&gt;
    Socket s = new Socket(&amp;quot;127.0.0.1&amp;quot;, 0);&lt;br /&gt;
    System.out.println(s.getPort());&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Display Socket InetAddress, Port, LocalPort and Local address ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.net.Socket;&lt;br /&gt;
public class MainClass {&lt;br /&gt;
  public static void main(String[] args) throws Exception {&lt;br /&gt;
    Socket theSocket = new Socket(&amp;quot;127.0.0.1&amp;quot;, 80);&lt;br /&gt;
    System.out.println(&amp;quot;Connected to &amp;quot; + theSocket.getInetAddress() + &amp;quot; on port &amp;quot;&lt;br /&gt;
        + theSocket.getPort() + &amp;quot; from port &amp;quot; + theSocket.getLocalPort() + &amp;quot; of &amp;quot;&lt;br /&gt;
        + theSocket.getLocalAddress());&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Get InputStream and OutputStream from Socket ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.io.IOException;&lt;br /&gt;
import java.io.InputStream;&lt;br /&gt;
import java.io.OutputStream;&lt;br /&gt;
import java.net.Socket;&lt;br /&gt;
public class MainClass {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    try {&lt;br /&gt;
      Socket s = new Socket(&amp;quot;127.0.0.1&amp;quot;, 80);&lt;br /&gt;
      OutputStream out = s.getOutputStream();&lt;br /&gt;
      out.close();&lt;br /&gt;
      InputStream in = s.getInputStream();&lt;br /&gt;
    } catch (IOException e) {&lt;br /&gt;
      System.err.println(e);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Get internet address from connected socket client ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.net.InetAddress;&lt;br /&gt;
import java.net.ServerSocket;&lt;br /&gt;
import java.net.Socket;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] args) throws Exception {&lt;br /&gt;
    ServerSocket server = new ServerSocket(8123);&lt;br /&gt;
    while (true) {&lt;br /&gt;
      Socket sock = server.accept();&lt;br /&gt;
      InetAddress addr = sock.getInetAddress();&lt;br /&gt;
      System.out.println(&amp;quot;Connection made to &amp;quot; + addr.getHostName() + &amp;quot; (&amp;quot; + addr.getHostAddress()&lt;br /&gt;
          + &amp;quot;)&amp;quot;);&lt;br /&gt;
      Thread.sleep(5000);&lt;br /&gt;
      sock.close();&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  java.net.Socket ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;OL&amp;gt;&amp;lt;LI&amp;gt;A socket is an endpoint of a network connection.&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;A socket enables an application to read from and write to the network.&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;The Socket class represents a &amp;quot;client&amp;quot; socket.&amp;lt;/LI&amp;gt;&amp;lt;/OL&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;A simple HTTP client&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.io.BufferedReader;&lt;br /&gt;
import java.io.IOException;&lt;br /&gt;
import java.io.InputStreamReader;&lt;br /&gt;
import java.io.OutputStream;&lt;br /&gt;
import java.io.PrintWriter;&lt;br /&gt;
import java.net.Socket;&lt;br /&gt;
public class MainClass {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    String host = &amp;quot;www.google.ru&amp;quot;;&lt;br /&gt;
    String protocol = &amp;quot;http&amp;quot;;&lt;br /&gt;
    try {&lt;br /&gt;
      Socket socket = new Socket(protocol + &amp;quot;://&amp;quot; + host, 80);&lt;br /&gt;
      OutputStream os = socket.getOutputStream();&lt;br /&gt;
      boolean autoflush = true;&lt;br /&gt;
      PrintWriter out = new PrintWriter(socket.getOutputStream(), autoflush);&lt;br /&gt;
      BufferedReader in = new BufferedReader(&lt;br /&gt;
      new InputStreamReader(socket.getInputStream()));&lt;br /&gt;
      // send an HTTP request to the web server&lt;br /&gt;
      out.println(&amp;quot;GET / HTTP/1.1&amp;quot;);&lt;br /&gt;
      out.println(&amp;quot;Host: &amp;quot; + host + &amp;quot;:80&amp;quot;);&lt;br /&gt;
      out.println(&amp;quot;Connection: Close&amp;quot;);&lt;br /&gt;
      out.println();&lt;br /&gt;
      // read the response&lt;br /&gt;
      boolean loop = true;&lt;br /&gt;
      StringBuilder sb = new StringBuilder(8096);&lt;br /&gt;
      while (loop) {&lt;br /&gt;
        if (in.ready()) {&lt;br /&gt;
          int i = 0;&lt;br /&gt;
          while (i != -1) {&lt;br /&gt;
            i = in.read();&lt;br /&gt;
            sb.append((char) i);&lt;br /&gt;
          }&lt;br /&gt;
          loop = false;&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
      // display the response to the out console&lt;br /&gt;
      System.out.println(sb.toString());&lt;br /&gt;
      socket.close();&lt;br /&gt;
    } catch (IOException e) {&lt;br /&gt;
      e.printStackTrace();&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Read float number from a Socket ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.io.DataInputStream;&lt;br /&gt;
import java.net.Socket;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] args) throws Exception {&lt;br /&gt;
    Socket sock = new Socket(args[0], 1234);&lt;br /&gt;
    DataInputStream dis = new DataInputStream(sock.getInputStream());&lt;br /&gt;
    float f = dis.readFloat();&lt;br /&gt;
    System.out.println(&amp;quot;PI=&amp;quot; + f);&lt;br /&gt;
    dis.close();&lt;br /&gt;
    sock.close();&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Read Object from Socket ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.io.ObjectInputStream;&lt;br /&gt;
import java.net.Socket;&lt;br /&gt;
import java.util.Hashtable;&lt;br /&gt;
public class Main{&lt;br /&gt;
  public static void main(String[] args) throws Exception {&lt;br /&gt;
    Socket sock = new Socket(args[0], 1234);&lt;br /&gt;
    ObjectInputStream ois = new ObjectInputStream(sock.getInputStream());&lt;br /&gt;
    Hashtable hash = (Hashtable) ois.readObject();&lt;br /&gt;
    System.out.println(hash);&lt;br /&gt;
    ois.close();&lt;br /&gt;
    sock.close();&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Socket Info ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.io.IOException;&lt;br /&gt;
import java.net.Socket;&lt;br /&gt;
import java.net.SocketException;&lt;br /&gt;
import java.net.UnknownHostException;&lt;br /&gt;
public class MainClass {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    try {&lt;br /&gt;
      Socket theSocket = new Socket(&amp;quot;127.0.0.1&amp;quot;, 80);&lt;br /&gt;
      System.out.println(&amp;quot;Connected to &amp;quot; + theSocket.getInetAddress() + &amp;quot; on port &amp;quot;&lt;br /&gt;
          + theSocket.getPort() + &amp;quot; from port &amp;quot; + theSocket.getLocalPort() + &amp;quot; of &amp;quot;&lt;br /&gt;
          + theSocket.getLocalAddress());&lt;br /&gt;
    } catch (UnknownHostException ex) {&lt;br /&gt;
      System.err.println(ex);&lt;br /&gt;
    } catch (SocketException ex) {&lt;br /&gt;
      System.err.println(ex);&lt;br /&gt;
    } catch (IOException ex) {&lt;br /&gt;
      System.err.println(ex);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Transfer a file via Socket ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.io.BufferedInputStream;&lt;br /&gt;
import java.io.File;&lt;br /&gt;
import java.io.FileInputStream;&lt;br /&gt;
import java.io.IOException;&lt;br /&gt;
import java.io.OutputStream;&lt;br /&gt;
import java.net.ServerSocket;&lt;br /&gt;
import java.net.Socket;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] args) throws IOException {&lt;br /&gt;
    ServerSocket servsock = new ServerSocket(123456);&lt;br /&gt;
    File myFile = new File(&amp;quot;s.pdf&amp;quot;);&lt;br /&gt;
    while (true) {&lt;br /&gt;
      Socket sock = servsock.accept();&lt;br /&gt;
      byte[] mybytearray = new byte[(int) myFile.length()];&lt;br /&gt;
      BufferedInputStream bis = new BufferedInputStream(new FileInputStream(myFile));&lt;br /&gt;
      bis.read(mybytearray, 0, mybytearray.length);&lt;br /&gt;
      OutputStream os = sock.getOutputStream();&lt;br /&gt;
      os.write(mybytearray, 0, mybytearray.length);&lt;br /&gt;
      os.flush();&lt;br /&gt;
      sock.close();&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
The client module&lt;br /&gt;
import java.io.BufferedOutputStream;&lt;br /&gt;
import java.io.FileOutputStream;&lt;br /&gt;
import java.io.InputStream;&lt;br /&gt;
import java.net.Socket;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] argv) throws Exception {&lt;br /&gt;
    Socket sock = new Socket(&amp;quot;127.0.0.1&amp;quot;, 123456);&lt;br /&gt;
    byte[] mybytearray = new byte[1024];&lt;br /&gt;
    InputStream is = sock.getInputStream();&lt;br /&gt;
    FileOutputStream fos = new FileOutputStream(&amp;quot;s.pdf&amp;quot;);&lt;br /&gt;
    BufferedOutputStream bos = new BufferedOutputStream(fos);&lt;br /&gt;
    int bytesRead = is.read(mybytearray, 0, mybytearray.length);&lt;br /&gt;
    bos.write(mybytearray, 0, bytesRead);&lt;br /&gt;
    bos.close();&lt;br /&gt;
    sock.close();&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;/div&gt;</summary>
			</entry>

	</feed>