Las aplicaciones de red se dividen en dos partes: cliente y servidor, y la clase Socket es una clase Java responsable de manejar la comunicación del cliente. A través de esta clase, puede conectarse a un servidor con una IP o nombre de dominio especificado, y puede enviar y recibir datos entre sí con el servidor.
Para una breve descripción de la comunicación de socket, el servidor escribe algo en la secuencia de salida de socket, y el cliente puede leer el contenido correspondiente a través del flujo de entrada de socket. El socket y el socket están conectados en dos direcciones, por lo que el cliente también puede escribir cosas en la secuencia de salida de socket correspondiente, y luego la secuencia de entrada de socket correspondiente del servidor puede leer el contenido correspondiente.
Ejemplo 1: Método de escritura breve del cliente (i).
Socket Client = null; try {client = new Socket (IP, Port); String msg = "Enviado Contenido de datos!"; // Obtenga la transmisión de lectura y escritura de Socket, envíe datos al programa del servidor Client.getOutputStream (). Escribir (msg.getBytes ()); byte [] datas = new byte [2048]; // Recibir datos del programa del servidor del programa del servidor del programa del servidor del programa del servidor del programa del servidor del programa del servidor del programa del servidor del programa del servidor del programa del servidor del programa Server client.getInputStream (). Read (dataS); System.out.println (new String (DataS)));} Catch (Exception e) {E.PrintStackTrace ();} finalmente {if (cliente! = null) {try {client.close ();} catch (ioexception e) {system.out.println ("systemerr:" +e);}}}}}}}} Ejemplo 2: Método de escritura breve del cliente (2).
Pruebe {Client = new Socket (); SocketAddress SocketAddress = new InetSocketAddress (IP, Port); Client.Connect (SocketAddress, 3000); String msg = "El servidor accedido devuelve el contenido!"; // Obtener la secuencia de lectura de Socket y enviar datos al cliente del servidor. byte [2048]; // Recibe datos del programa del servidor Client.getInputStream (). Read (DataS); System.out.println (new String (DataS));} Catch (Exception e) {E.PrintStackTrace {System.out.println ("Systemerr:" +E);}}} Ejemplo 3: redacción completa del cliente.
Prueba {// 1. Establezca una conexión de socket de cliente, especifique la ubicación y el puerto del servidor. Socket Socket = nuevo socket (ip, puerto); // 2. Obtenga el Socket Read y escriba Stream OutputStream OS = Socket.getOutputStream (); PrintWriter pw = new PrintWriter (OS); // Input Stream InputStream es = Socket.getInputStream (); BufferedReader BR = New BufferedReader (nuevo InputStreamReader (is)); // 3. Use la transmisión para leer y escribir el socket de acuerdo con ciertas operaciones String sendInfo = "¡Información de datos enviada al servidor!"; PW.Write (SendInfo); pw.flush (); Socket.shutdownOutput (); // La cadena correspondiente del servidor receptor respondeinfo = null; while (! (((ResponseInfo = br.readline ()) == null)) {System.out.println ("Recibir información de datos del servidor:"+RespuestaInfo); } // 4. Cierre el recurso br.close (); is.close (); pw.close (); os.close (); socket.close (); } capt (desconocidoHosTexception e) {E.PrintStackTrace (); } catch (ioException e) {E.PrintStackTrace (); }Para obtener más información sobre el conocimiento relevante del programa del cliente que envía y recepción de datos en Java Socket Communication (I), el editor se lo presentará. Para obtener más información, inicie sesión en el sitio web de Wulin.com para obtener más información.