elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el ttwitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  SOCKETS AYUDA URGENTE PORFAVOR!!!!
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: SOCKETS AYUDA URGENTE PORFAVOR!!!!  (Leído 509 veces)
Pitagoras

Desconectado Desconectado

Mensajes: 23


Ver Perfil
SOCKETS AYUDA URGENTE PORFAVOR!!!!
« en: 8 Mayo 2022, 20:23 pm »

Buenas, tengo un problema y es que no sé como puedo poner el tiempo transcurrrido (tanto en Cliente como en Servidor) antes de que se imprima la fecha-hora en formato legible por humanos. Apunte: entre cliente y Servidor se intercambian la fecha actual en su tiempo de ejecución. Agradeceria muchiisimo si alguien me pudiese ayudar
A continuacion el codigo de Cliente y Servidor:

Cliente:
Código:
public class ClienteHora {

public static void main(String[] args) throws IOException {

   final String HOST="127.0.0.1"; //INDICO A QUIEN ME VOY A CONECTAR
   final int PUERTO=5000;//Pongo el puerto que puse en el servidor
  //Clases necesarias
  DataInputStream in;
  DataOutputStream out;
 
  //Cuando el cliente conecta exitosamente al servidor:
  //Cliente TCP conectado a <nombre host> en el puerto <número puerto>
 
  Socket sc = new Socket(HOST, PUERTO); //A esta clase socket le pasamos el HOST y el PUERTO
  System.out.println("Cliente TCP conectado a: "+HOST+" en el puerto: "+PUERTO);
 
  //Creamos puentes de comunicacion
  in = new DataInputStream(sc.getInputStream()); //inputStream(LEE): cliente -> servidor
  out = new DataOutputStream(sc.getOutputStream());
 
  String mensaje = in.readUTF(); //leemos el mensaje
  System.out.println(mensaje);
 


 
  //Esto me servirá para contar los caracteres, los espacios
  String mayus="";
  String minus="";
  String numeros="";
  String letras="";
 
  int n_mayus=0;
  int n_minus=0;
  int n_numeros=0;
  int n_letras=0;
  int n_espacios=0;
 
  for(int i=0; i<mensaje.length();i++) {
   if(Character.isLetter(mensaje.charAt(i))) {
    n_letras++;
    letras+=mensaje.charAt(i)+" * ";
   }
   if(Character.isUpperCase(mensaje.charAt(i))) {
    n_mayus++;
    mayus+=mensaje.charAt(i)+" * ";
   }
   if(Character.isLowerCase(mensaje.charAt(i))) {
    n_minus++;
    minus+=mensaje.charAt(i)+" * ";
   }
   if(Character.isDigit(mensaje.charAt(i))) {
    n_numeros++;
    numeros+=mensaje.charAt(i)+" * ";
   }
   if(Character.isSpaceChar(mensaje.charAt(i))) {
    n_espacios++;
   }
  }
 
 
  System.out.println("Mensaje recibido: "+mensaje);
  System.out.println("Se han recibido: "+"\n -El número de caracteres: "+n_letras+"\n -Mayusculas: "+n_mayus+"\n -Minusculas: "+n_minus+
  "\n -El número de espacios: "+n_espacios+"\n -La cantidad de datos numéricos: "+n_numeros);
 
 
  Date fechaHoraActuales = new Date();
  out.writeUTF("fecha y hora enviadas al Servidor: "+ fechaHoraActuales);
/*
  long startTime = System.currentTimeMillis(); // Run some code;
  long stopTime = System.currentTimeMillis();
  System.out.println("El tiempo transcurrido fue: " + (stopTime - startTime) + " miliseconds.");
*/
 
 
 
  sc.close();
 
}

}



Servidor
Código:
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Date;

public class ServidorHora {

public static void main(String[] args) throws IOException {
ServerSocket servidor = null;
Socket sc = null;
final int PUERTO = 5000;
final String HOST = "127.0.0.1";

DataInputStream in;
DataOutputStream out;

servidor = new ServerSocket(PUERTO);
System.out.println("El servidor de DayTime ha arrancado: ServerSocket [direccion="+HOST+", localport="+PUERTO+"]" ); //El servidor siempre estará atento a escuchas peticiones de los clientes

while(true) {
sc = servidor.accept();
System.out.println("Cliente conectado");

in = new DataInputStream(sc.getInputStream());
out = new DataOutputStream(sc.getOutputStream());


Date fechaHoraActuales = new Date();
out.writeUTF("fecha y hora enviadas al Cliente: "+ fechaHoraActuales);


String mensajeN = in.readUTF();
System.out.println(mensajeN);

/*
long startTime = System.currentTimeMillis(); // Run some code;
long stopTime = System.currentTimeMillis();
System.out.println("El tiempo transcurrido fue: " + (stopTime - startTime) + " miliseconds.");
*/


System.out.println("Cliente desconectado: "+ sc);
sc.close();
}


}

}



En línea

Tachikomaia


Desconectado Desconectado

Mensajes: 659


Superhacker (es broma xD )


Ver Perfil
Re: SOCKETS AYUDA URGENTE PORFAVOR!!!!
« Respuesta #1 en: 8 Mayo 2022, 20:38 pm »

Tema repetido parece
https://foro.elhacker.net/java/sockets_servidor_ayuda_porfavor-t514746.0.html
Como no le responden ahí, crea otro tema igual. Listillo...


En línea

Pitagoras

Desconectado Desconectado

Mensajes: 23


Ver Perfil
Re: SOCKETS AYUDA URGENTE PORFAVOR!!!!
« Respuesta #2 en: 8 Mayo 2022, 20:40 pm »

Es una especificacion diferente, además si que me ayudaron y respondieron, lo agradezco mucho la verdad! .
Si alguien me pudiese ayudar con este dilema porfavor!
« Última modificación: 8 Mayo 2022, 20:45 pm por Pitagoras » En línea

K-YreX


Desconectado Desconectado

Mensajes: 978



Ver Perfil
Re: SOCKETS AYUDA URGENTE PORFAVOR!!!!
« Respuesta #3 en: 8 Mayo 2022, 21:27 pm »

Para obtener el tiempo transcurrido en una porción de código tienes que seguir los siguientes pasos:
  • Guardar el instante actual al principio de la porción de código a medir
  • Guardar el instante actual al final de la porción de código a medir
  • Obtener la diferencia entre ambos instantes

Existen multitud de clases para obtener el instante actual. Pero el mecanismo es ese:
Código
  1. int startTime = System.currentTimeMillis();
  2. // aqui pones el codigo que quieras
  3. ...
  4. int finalTime = System.currentTimeMillis();
  5. int executionTime = finalTime - startTime;
  6. System.out.println("Tiempo transcurrido: " + executionTime + " ms");
En línea

Código
  1. cout << "Todos tenemos un defecto, un error en nuestro código" << endl;
Pitagoras

Desconectado Desconectado

Mensajes: 23


Ver Perfil
Re: SOCKETS AYUDA URGENTE PORFAVOR!!!!
« Respuesta #4 en: 9 Mayo 2022, 12:10 pm »

GRACIAS!!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
AYUDA urgente, porfavor
Hacking
gerard_88 0 2,097 Último mensaje 27 Abril 2010, 21:33 pm
por gerard_88
ayuda porfavor es urgente « 1 2 »
Programación C/C++
firius2010 13 4,976 Último mensaje 23 Marzo 2012, 09:35 am
por Xandrete
Ayuda porfavor (urgente)
Bases de Datos
J_kaos 0 1,095 Último mensaje 16 Mayo 2012, 23:31 pm
por J_kaos
Ayuda urgente - Chat en C con sockets
Programación C/C++
FelipeSO 2 1,226 Último mensaje 17 Febrero 2015, 22:34 pm
por engel lex
SOCKETS SERVIDOR AYUDA PORFAVOR!!
Java
Pitagoras 2 485 Último mensaje 7 Mayo 2022, 19:15 pm
por K-YreX
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines