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

Problema con valores obtenidos de un archivo

Estas en el tema de Problema con valores obtenidos de un archivo en el foro de Java en Foros del Web. Hola, actualmente estoy creando una app para android y me tope con un problema que no sé como resolver. Cuando obtengo valores de un archivo ...
  #1 (permalink)  
Antiguo 04/11/2011, 23:39
Avatar de berper  
Fecha de Ingreso: abril-2009
Ubicación: Mexico
Mensajes: 74
Antigüedad: 15 años
Puntos: 2
Problema con valores obtenidos de un archivo

Hola, actualmente estoy creando una app para android y me tope con un problema que no sé como resolver.

Cuando obtengo valores de un archivo no puedo utilizarlos correctamente, por ejemplo:

Si quiero hacer un if no puedo hacerlo de esta forma:

if(valor_archivo=="cierto"){...}

Solo de esta forma:

if(valor_archivo.equals("cierto")){}

valor_archivo esta definido como String

¿Alguien sabe porque podria pasar?


Este metodo deberia devolver los datos como string, pero no lo hace bien:

Código:
    public String configuracion_leer(Context contexto) {
    	String datos = null;
        try {
        	FileInputStream fis = contexto.openFileInput("configuracion");
        	BufferedReader br = new BufferedReader(new InputStreamReader(fis));
        	StringBuilder text = new StringBuilder();
        	String line;
        	int i = 0;
            while ((line = br.readLine()) != null) {
            	if(i == 0){text.append(line);}else{text.append("\n" + line);} i++;
            }
            fis.close();
            datos = text.toString();
        } catch (IOException e) {
        	e.printStackTrace();
        }
        return datos;
    }
__________________
Administrador de El Mundo de Bob Esponja

Última edición por berper; 04/11/2011 a las 23:44
  #2 (permalink)  
Antiguo 05/11/2011, 00:39
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 3 meses
Puntos: 260
Sonrisa Respuesta: Problema con valores obtenidos de un archivo

Hola,

Cita:
Iniciado por berper Ver Mensaje
¿Alguien sabe porque podria pasar?
Eso es de lo más normal, se usa el operador == para compara referencias entre objetos y el método equals para comparar el contenido.

http://leepoint.net/notes-java/data/...reobjects.html

Cita:
Iniciado por berper Ver Mensaje
Este metodo deberia devolver los datos como string, pero no lo hace bien:
¿Y qué es lo que no hace bien? ¿Te devuelve un string vacío, te devuelve un string con los datos desordenados, te devuelve null? Nosotros no contamos con el archivo 'configuracion', ¿como podemos saber si está vacío? ¿O no lo hace bien a tu gusto?

Si dices que es lo que te devuelve el método y adicionalmente que es lo que esperas de resultado posiblemente sea mas fácil darte una orientación.

Saludos,
  #3 (permalink)  
Antiguo 05/11/2011, 01:40
Avatar de berper  
Fecha de Ingreso: abril-2009
Ubicación: Mexico
Mensajes: 74
Antigüedad: 15 años
Puntos: 2
Respuesta: Problema con valores obtenidos de un archivo

@HackmanC Gracias por responder.
El archivo contiene un texto plano.

El problema es que si devuelve el texto, pero no puedo utilizarlo en comparaciones (sin equals) ni crear un ArrayList para un ListView.

Digamos que el archivo contiene el texto "Ejemplo", quisiera poder hacer lo siguiente:

Código:
String variable_uno = "Ejemplo";
String variable_dos = configuracion_leer(context);

if(variable_uno==variable_dos){CÓDIGO}
¿Como puedo convertir el valor del método para poder realizar la comparación de esa manera?.
Intente con toString(), pero no funciona.
__________________
Administrador de El Mundo de Bob Esponja
  #4 (permalink)  
Antiguo 05/11/2011, 02:45
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años
Puntos: 306
Respuesta: Problema con valores obtenidos de un archivo

Cita:
El problema es que si devuelve el texto, pero no puedo utilizarlo en comparaciones (sin equals)
Te lo acaban de explicar

Cita:
Iniciado por HackmanC
el operador == para compara referencias entre objetos y el método equals para comparar el contenido
No puedes usar == para comparar cadenas, tienes que usar equals.

variable_uno.equals(variable_dos) es el equivalente de variable_uno==variable_dos cuando usas objetos, y String lo es.
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.

Etiquetas: string
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 17:57.