Java - No devuelve la hora actual

 
Vista:

No devuelve la hora actual

Publicado por Monik (5 intervenciones) el 16/08/2010 16:10:28
Hola a tod@s,

he desarrollado una pequeña función para obtener la fecha y hora actual del sistema:
public static String fechaHoraActual(){
Date fechaActual = new Date();
SimpleDateFormat formato = new SimpleDateFormat("dd/MM/yyyy H:mm:ss");
return formato.format(fechaActual);
}

Con ella obtengo la fecha actual correctamente, pero en cambio la hora se encuentra desfasada en 2 horas menos. Es decir, si la hora del sistema marca las 16:00:00, la función está devolviendo 15:00:00.

Estoy desarrollándola sobre Windows 7, por lo que he pasado a mirar la configuración del reloj del sistema (ya que me da a pensar que todo y que se visualice correctamente la hora, el reloj de Windows tenga realmente, para este ejemplo, las 15:00:00) y parece estar todo correcto:
Zona horaria: (UTC+01:00) Bruselas, Copenhague, Madrid, París
Ubicación actual: España
Formato hora larga: H:mm:ss
Sincronización con hora Internet: time.windows.com

¿Alguna idea del error?

Muchas gracias y saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:No devuelve la hora actual

Publicado por mayrita (163 intervenciones) el 16/08/2010 17:44:26
http://javafacil.netii.net/mas.php#fechas

import java.util.*;
import java.text.*;

public class fechas{

public static void main(String args[]){
//fecha y hora actual del sistema
Date date = new Date();
System.out.println("Hoy " + date.toString());

//vuelve una fecha en string a tipo date
//pero el formato debe ser MM/dd/yyyy
date = new Date("22/3/2009");
//esto vuelve un tipo date a string
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
String fecha = sdf.format(date);//la volvemos string
System.out.println(fecha);

//aqui volvemos tipo date una fecha y hora
date = new Date("14/6/2010 9:7:1");
System.out.println(date.toString());
//aqui obtenemos la hora
sdf = new SimpleDateFormat("hh:mm:ss");
fecha = sdf.format(date);//la volvemos string
System.out.println(fecha);
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:No devuelve la hora actual

Publicado por Monik (5 intervenciones) el 16/08/2010 21:38:06
Gracias, pero con este código me ocurre exactamente lo mismo...

De hecho ya había probado con varias alternativas, pero con todas me ocurre lo mismo. De ahí que me diese a pensar que debía ser por algún tema de configuración del reloj del sistema de Windows 7, porque con Windows anteriores no me había dado nunca este problema...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar