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

Problema con un ciclo while y sus variables locales

Estas en el tema de Problema con un ciclo while y sus variables locales en el foro de Programación General en Foros del Web. Hola que tal a todos, tengo un problema con un ciclo while, en sí no es directamente con el bucle. Tengo un método llamado Conf, ...
  #1 (permalink)  
Antiguo 30/12/2012, 19:40
 
Fecha de Ingreso: diciembre-2012
Ubicación: León
Mensajes: 2
Antigüedad: 11 años, 4 meses
Puntos: 0
Pregunta Problema con un ciclo while y sus variables locales

Hola que tal a todos, tengo un problema con un ciclo while, en sí no es directamente con el bucle.

Tengo un método llamado Conf, todavía no se que tipo dejarle, le he asignado String, boolean y hasta void. El método lo que hace (lo que debería de hacer) es leer un archivo de configuración del programa, y buscar los datos de configuración.

Código:
public String conf(){
        Scanner in;
         query="lang:español";
            try {

                leer = new Scanner(new FileReader("D:/escritorio/data/conf"));
                while (leer.hasNextLine()) {
                    String t="";
                    t += leer.nextLine();
                     if(t.contains(query)){
                           return "Ok";
                           break;
                     }
                     else{return "Lang not defined"; break;}              
                } // while
                           
                
                
           
            }catch (FileNotFoundException e) {
                return "No se encontró el archivo";
             } finally {
                if (leer!=null){
                leer.close();
             }//if
             } // finally
}//
Este es mi código, en el archivo conf, vienen los datos, que capturo desde un textField, se lo mando a conf.

Sucede que con algunas "consultas" que si existen me dice que no, o viceversa :(
Otra cosa que intenté es leer el archivo, guardar su contenido en un string y devolverlo al método que se encargue de aplicar la configuración, pero no puedo retornar t porque es una variable local al while, y aunque la defina como atributo no devuelve el valor del while.

¿Cómo le puedo hacer?

Agradezco la ayuda de antemano.


Solución: Declarar la variable local como atributo público.

Última edición por Purungo; 31/12/2012 a las 00:30 Razón: Solucionado
  #2 (permalink)  
Antiguo 31/12/2012, 06:26
 
Fecha de Ingreso: enero-2008
Mensajes: 201
Antigüedad: 16 años, 3 meses
Puntos: 39
Respuesta: Problema con un ciclo while y sus variables locales

Si quieres poder devolver t, defínela al principio del método. Por otra parte, el while solo se ejecuta una vez y solo vas a obtener como resultado del método "OK" o "Lang not defined". Realmente no se que quieres guardar en t.

Esto me lleva a pensar que tu fichero únicamente contiene una línea que sería "lang:español" para devolver si existe o no existe (en forma de String), para este caso es mejor que lo devuelvas como boolean y en el caso de la excepción, propagarla, y no devolver otro String.

Etiquetas: java
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 00:15.