Sockets TCP en Kotlin
uso de sockets TCP en Kotlin
Servidor.kt
object Servidor {
@kotlin.jvm.JvmStatic
fun main(args: Array<String>) {
lateinit var servidor: ServerSocket
lateinit var socket: Socket
lateinit var input: DataInputStream
lateinit var out: DataOutputStream
//puerto de nuestro servidor
val PUERTO = 5000
try {
//Creamos el socket del servidor
servidor = ServerSocket(PUERTO)
println("Servidor iniciado")
//Siempre estara escuchando peticiones
while (true) {
//Espero a que un cliente se conecte
socket = servidor.accept()
println("Cliente conectado")
input = DataInputStream(socket.getInputStream())
out = DataOutputStream(socket.getOutputStream())
//Leo el mensaje que me envia
val mensaje = input.readUTF()
println(mensaje)
//Le envio un mensaje
out.writeUTF("¡Hola mundo desde el servidor!")
//Cierro el socket
socket.close()
println("Cliente desconectado")
}
} catch (ex: IOException) {
Logger.getLogger(Servidor::class.java.getName()).log(Level.SEVERE, null, ex)
}
}
}
Cliente.kt
object Cliente {
@JvmStatic
fun main(args: Array<String>) {
//Host del servidor
val HOST = "127.0.0.1"
//Puerto del servidor
val PUERTO = 5000
lateinit var socket: Socket
lateinit var input: DataInputStream
lateinit var out: DataOutputStream
lateinit var mensaje: String
try {
//Creo el socket para conectarme con el cliente
socket = Socket(HOST, PUERTO)
input = DataInputStream(socket.getInputStream())
out = DataOutputStream(socket.getOutputStream())
//Envio un mensaje al cliente
out.writeUTF("¡Hola mundo desde el cliente!")
//Recibo el mensaje del servidor
mensaje = input.readUTF()
println(mensaje)
socket.close()
} catch (ex: IOException) {
Logger.getLogger(Cliente::class.java.getName()).log(Level.SEVERE, null, ex)
}
}
}
Código de Sockets_TCP_Kotlin (Hecho con IntelliJ Idea 2025.3.1.1)
Deja una respuesta
Lo siento, debes estar conectado para publicar un comentario.