Servidor
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
import java.net.ServerSocket import java.net.Socket import java.io.OutputStreamWriter import java.io.PrintWriter fun main() { val server = ServerSocket(12345) // Puerto de escucha println("Servidor en ejecución, esperando conexiones...") while (true) { val clientSocket = server.accept() println("Cliente conectado desde: ${clientSocket.inetAddress.hostAddress}") // Lista de palabras a enviar al cliente val words = listOf("example", "hello", "world", "process", "communication") val writer = PrintWriter(clientSocket.getOutputStream(), true) for (word in words) { writer.println(word) } clientSocket.close() } } |
Cliente
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
import java.net.Socket import java.io.BufferedReader import java.io.InputStreamReader fun main() { val serverAddress = "127.0.0.1" // Cambia a la dirección IP o nombre de host del servidor val serverPort = 12345 // Puerto en el que escucha el servidor val clientSocket = Socket(serverAddress, serverPort) val reader = BufferedReader(InputStreamReader(clientSocket.getInputStream())) while (true) { val word = reader.readLine() if (word == null) { break // Se ha alcanzado el final de las palabras } val letterCount = word.length println("Número de letras en '$word': $letterCount") } clientSocket.close() } |