Foros del Web » Programación para mayores de 30 ;) » Java »

Conocer los nombres de los meses comprendidos en dos fechas

Estas en el tema de Conocer los nombres de los meses comprendidos en dos fechas en el foro de Java en Foros del Web. Hola, estoy desarrollando un proyecto en java, espero me puedan ayudar, necesito saber los meses (nombres) comprendidos entre dos fechas, ya que estas fechas las ...
  #1 (permalink)  
Antiguo 27/03/2012, 20:14
 
Fecha de Ingreso: marzo-2012
Mensajes: 6
Antigüedad: 12 años, 8 meses
Puntos: 0
Conocer los nombres de los meses comprendidos en dos fechas

Hola, estoy desarrollando un proyecto en java, espero me puedan ayudar, necesito saber los meses (nombres) comprendidos entre dos fechas, ya que estas fechas las obtengo de la base de datos (mysql) pero quiero saber por ejemplo: si el periodo es
febrero - abril yo pueda desplegar de alguna forma: febrero, marzo, abril.
ando un poco perdida espero su ayuda y de antemano, gracias.....
  #2 (permalink)  
Antiguo 27/03/2012, 20:56
Avatar de SPAWN3000  
Fecha de Ingreso: marzo-2008
Ubicación: Bogota
Mensajes: 858
Antigüedad: 16 años, 8 meses
Puntos: 15
Respuesta: Conocer los nombres de los meses comprendidos en dos fechas

Para tu caso, tendrias que crear un arreglo con el nombre de los meses en español...
Y acorde al resultado de la variable mes, seleccionas la posicion del arreglo a mostrar.

Algo asi:
Código:
String meses[] = {"Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"};

for(int i=desde;i<hasta;i++){
arreglo[i] = dato;
}
Y algo mas....
http://user.xmission.com/~goodhill/d...eltaDates.html

Como dato adicional, de apoyor:
Código:
 
import java.util.Calendar;  //Lo que debes importar

Calendar ahora = Calendar.getInstance();
int hora = ahora.get(Calendar.HOUR_OF_DAY);
int minutos = ahora.get(Calendar.MINUTE);
int segundos = ahora.get(Calendar.SECOND);
String AM_PM = (ahora.get(Calendar.AM_PM)==1)?"PM":"AM";
int dia = (ahora.get(Calendar.DAY_OF_MONTH));
int mes = (ahora.get(Calendar.MONTH)); //Recuperar el mes
int aaaa = (ahora.get(Calendar.YEAR));
int diasemana = (ahora.get(Calendar.DAY_OF_WEEK));
  #3 (permalink)  
Antiguo 27/03/2012, 23:12
Avatar de FiruzzZ  
Fecha de Ingreso: diciembre-2007
Ubicación: en casa
Mensajes: 470
Antigüedad: 16 años, 11 meses
Puntos: 41
Respuesta: Conocer los nombres de los meses comprendidos en dos fechas

No hay necesidad de crear algo que ya existe (un array o collection con lo meses, ni días etc..)
new java.text.DateFormatSymbols().getMonths();
un recorte de la javadoc de la class mencionada:
Cita:
class for encapsulating localizable date-time formatting data, such as the names of the months, the names of the days of the week, and the time zone data.
__________________
BadProgrammerException!
  #4 (permalink)  
Antiguo 28/03/2012, 02:20
 
Fecha de Ingreso: marzo-2012
Ubicación: Madrid
Mensajes: 74
Antigüedad: 12 años, 8 meses
Puntos: 12
Respuesta: Conocer los nombres de los meses comprendidos en dos fechas

Completamente de acuerdo con FiruzzZ. Con demasiada frecuencia veo que la gente crea estructuras con el nombre de los meses, o los dias de la semana, para mostrarlos en funcion de una fecha, o se monta complicados algoritmos para determinar si un año es bisiesto...
Todo eso ya está incluido en el propio API de Java, solo es necesario invocar el metodo apropiado de la clase correcta.
  #5 (permalink)  
Antiguo 28/03/2012, 15:05
 
Fecha de Ingreso: marzo-2012
Mensajes: 6
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: Conocer los nombres de los meses comprendidos en dos fechas

hola gracias por sus respuestas, la respuesta de SPAWN3000 me ayudo mucho , quise utilizar la clase que menciona pero me marca un error (dice que requiere String y ah encontrado string [] :( ... dejo el codigo, por el momento use la alternativa de SPAWN3000, pero quisiera saber como implementar el DateFormatSymbols().getMonths();

Código:
 public String [] getMonthForInt(int m1,int m2) {
        int lon=m2-m1;
        DateFormatSymbols dfs = new DateFormatSymbols();
        String[] months=new String[lon];
        for(int i=m1;i<m2;i++){
            months [i] = dfs.getMonths(); 
            System.out.println("mes "+months);
        }
        return months;
        }
  #6 (permalink)  
Antiguo 28/03/2012, 20:49
Avatar de SPAWN3000  
Fecha de Ingreso: marzo-2008
Ubicación: Bogota
Mensajes: 858
Antigüedad: 16 años, 8 meses
Puntos: 15
Respuesta: Conocer los nombres de los meses comprendidos en dos fechas

Cita:
Iniciado por FiruzzZ Ver Mensaje
No hay necesidad de crear algo que ya existe (un array o collection con lo meses, ni días etc..)
new java.text.DateFormatSymbols().getMonths();
un recorte de la javadoc de la class mencionada:
En español??
  #7 (permalink)  
Antiguo 29/03/2012, 05:47
Avatar de FiruzzZ  
Fecha de Ingreso: diciembre-2007
Ubicación: en casa
Mensajes: 470
Antigüedad: 16 años, 11 meses
Puntos: 41
Respuesta: Conocer los nombres de los meses comprendidos en dos fechas

Cita:
Iniciado por SPAWN3000 Ver Mensaje
En español??
Por si no te habías dado cuenta, Java está escrito en inglés. Si sos medio pelotudo, limitate a observar nomás el foro y no respondas. Dudas como estas las tendrías que hacer por MP y no ensuciar un post con preguntas absurdas, incluso Kary que es MAS novato/a que vos no la hizo.

Karymme
Primeramente la lógica del código que mostraste está mal!, estás manejando mal las posiciones del arrays months[i], estás intentando almacenar el retorno de dfs.getMonths() que es un String[] y NO UN String dentro de una posición de months[i].
Código Java:
Ver original
  1. //Este método lo único que hace es retornar un String[] con los meses EN TU IDIOMA, según tu LOCATION (la que indique la pc).
  2. //QUE es exactamente lo mismo a crear la variable que te decía SPAWN30000000.
  3. //String meses[] = {"Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"};
  4. new java.text.DateFormatSymbols().getMonths();
__________________
BadProgrammerException!
  #8 (permalink)  
Antiguo 29/03/2012, 06:50
 
Fecha de Ingreso: marzo-2012
Ubicación: Madrid
Mensajes: 74
Antigüedad: 12 años, 8 meses
Puntos: 12
Respuesta: Conocer los nombres de los meses comprendidos en dos fechas

Cita:
Iniciado por SPAWN3000 Ver Mensaje
En español??
Por supuesto, en español tambien.

Código:
String [] nombreMeses = new java.text.DateFormatSymbols(new java.util.Locale("ES")) .getMonths();
  #9 (permalink)  
Antiguo 29/03/2012, 21:43
Avatar de SPAWN3000  
Fecha de Ingreso: marzo-2008
Ubicación: Bogota
Mensajes: 858
Antigüedad: 16 años, 8 meses
Puntos: 15
Respuesta: Conocer los nombres de los meses comprendidos en dos fechas

Cita:
Iniciado por FiruzzZ Ver Mensaje
Por si no te habías dado cuenta, Java está escrito en inglés. Si sos medio pelotudo, limitate a observar nomás el foro y no respondas. Dudas como estas las tendrías que hacer por MP y no ensuciar un post con preguntas absurdas, incluso Kary que es MAS novato/a que vos no la hizo.

Karymme
Primeramente la lógica del código que mostraste está mal!, estás manejando mal las posiciones del arrays months[i], estás intentando almacenar el retorno de dfs.getMonths() que es un String[] y NO UN String dentro de una posición de months[i].
Código Java:
Ver original
  1. //Este método lo único que hace es retornar un String[] con los meses EN TU IDIOMA, según tu LOCATION (la que indique la pc).
  2. //QUE es exactamente lo mismo a crear la variable que te decía SPAWN30000000.
  3. //String meses[] = {"Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"};
  4. new java.text.DateFormatSymbols().getMonths();

Que bien, insultar ante una pregunta... eres muy digno de participar en los foros... Un aplauso por pelar el cobre caballero!!.
  #10 (permalink)  
Antiguo 29/03/2012, 21:45
Avatar de SPAWN3000  
Fecha de Ingreso: marzo-2008
Ubicación: Bogota
Mensajes: 858
Antigüedad: 16 años, 8 meses
Puntos: 15
Respuesta: Conocer los nombres de los meses comprendidos en dos fechas

Cita:
Iniciado por luis_vega Ver Mensaje
Por supuesto, en español tambien.

Código:
String [] nombreMeses = new java.text.DateFormatSymbols(new java.util.Locale("ES")) .getMonths();
Muy bien! era asi de sencillo...
  #11 (permalink)  
Antiguo 29/03/2012, 21:49
Avatar de SPAWN3000  
Fecha de Ingreso: marzo-2008
Ubicación: Bogota
Mensajes: 858
Antigüedad: 16 años, 8 meses
Puntos: 15
Respuesta: Conocer los nombres de los meses comprendidos en dos fechas

Cita:
Iniciado por SPAWN3000 Ver Mensaje
Que bien, insultar ante una pregunta... eres muy digno de participar en los foros... Un aplauso por pelar el cobre caballero!!. Ademas de donde sacas que no soy novato en java, en otros lenguajes si tengo experiencia pero en java estoy practicando leyendo el foro, preguntnado y respondiendo... Y no hay ley en el foro que diga que eso esta mal... Piensalo!!
  #12 (permalink)  
Antiguo 30/03/2012, 05:34
Avatar de FiruzzZ  
Fecha de Ingreso: diciembre-2007
Ubicación: en casa
Mensajes: 470
Antigüedad: 16 años, 11 meses
Puntos: 41
Respuesta: Conocer los nombres de los meses comprendidos en dos fechas

por favor SPAWN, son programador o aspirantes a serlo, sos una persona que está desarrollando un pensamiento lógico, una capacidad de análisis, INVESTIGACIÓN, no puedes darse cuenta del fragmento de la Javadoc del método que resalté en mi 1er respuesta en este thread?
Cita:
class for encapsulating localizable date-time formatting data, such as the names of the months, the names of the days of the week, and the time zone data.
Quiere decir que toma la configuración del entorno en el que se ejecuta, no hay necesidad de DateFormatSymbols(new java.util.Locale("ES")), si este ya está en español ( y sus variantes).
.. y en todo caso, tan difícil te hubiera resultado investigar por tu cuenta y llegar a la deducción de ese código tan simple? y encontrar el constructor que recibe un parámetro Locate. Dejate de joder y pensá 2 segundos, tomate la molestia de mirar la API, se un poco mas autodidacta antes de postear algo, te va servir de mucho para llegar a ser un buen profesional algún día
__________________
BadProgrammerException!

Etiquetas: conocer, meses, mysql, nombres
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:42.