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

Leer/Cargar Fichero de Texto de Matriz con campos boolean

Estas en el tema de Leer/Cargar Fichero de Texto de Matriz con campos boolean en el foro de Java en Foros del Web. Buenas, Estoy practicando con ficheros de texto, y me ha surgido un problema. ¿Es posible cargar/leer un fichero de texto que contenga una matriz con ...
  #1 (permalink)  
Antiguo 11/06/2012, 13:14
 
Fecha de Ingreso: febrero-2012
Mensajes: 39
Antigüedad: 12 años, 2 meses
Puntos: 0
Leer/Cargar Fichero de Texto de Matriz con campos boolean

Buenas,

Estoy practicando con ficheros de texto, y me ha surgido un problema. ¿Es posible cargar/leer un fichero de texto que contenga una matriz con campos boolean, sin saber la longitud de las filas y de las columnas?

Muchisimas Gracias

Edito= La Matriz es bidimensional, por si no estaba claro.

Última edición por arratete; 11/06/2012 a las 13:37
  #2 (permalink)  
Antiguo 11/06/2012, 13:39
 
Fecha de Ingreso: febrero-2012
Mensajes: 39
Antigüedad: 12 años, 2 meses
Puntos: 0
Respuesta: Leer/Cargar Fichero de Texto de Matriz con campos boolean

Error mio, investigando y concentrándome un poco puedo declarar una matriz inicializandola con los valores fila=10, columna=10, ya que se trata de un tablero de 10x10.

Esto es lo que he hecho, pero no se si es correcto.

Código:
public void panelBarcos (Fichero pFichero)
{
	try
	{
	File f=new File (pFichero);
	FileReader fr=new FileReader (f);
	BufferedReader br=new BufferedReader (fr);
	boolean panelJugador=new boolean[10][10];
	
	String linea=null;
	
	
	while((linea=br.readLine()!=null))
	{
		for (int fila=0;fila<10;fila++ )
		{
			for (int columna=0; columna<10;columna++)
			{
				linea=br.readLine();
				panelJugador[fila][columna]=Boolean.parseBoolean(linea);
			}
		}
	}
	br.close();
	}
	catch(IOException ex)
	{
		
	}
		
}
  #3 (permalink)  
Antiguo 11/06/2012, 15:23
Avatar de khristian_696  
Fecha de Ingreso: agosto-2008
Mensajes: 27
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: Leer/Cargar Fichero de Texto de Matriz con campos boolean

Hola arratete,
Es correcto lo que comentas, sin embargo el archivo de texto que valores tiene??, ya que debido a que el arreglo es un booleano sólo podría aceptar valores como true/false ó 1/0, en otro seguramente te enviará error por el tipo de datos que intentas almacentar en el arreglo.

Saludos,
  #4 (permalink)  
Antiguo 12/06/2012, 11:30
 
Fecha de Ingreso: febrero-2012
Mensajes: 39
Antigüedad: 12 años, 2 meses
Puntos: 0
Respuesta: Leer/Cargar Fichero de Texto de Matriz con campos boolean

Gracias khristian_696 por la respuesta, es un ejercicio en el que tengo que suponer que el fichero de texto ya esta creado.

Por lo que me dices me entra la duda, porque por lo que yo tengo entendido al leer de un fichero solo puedo hacerlo mediante lectura de strings(a pesar de que el valor guardado sea "true" o "false"), y es por eso que quiero convertirlo a boolean, y no se exactamente como hacerlo. Entiendo que Boolean.parseBoolean esta bien, ya me entra la duda.

Última edición por arratete; 12/06/2012 a las 11:39
  #5 (permalink)  
Antiguo 15/06/2012, 08:43
Avatar de khristian_696  
Fecha de Ingreso: agosto-2008
Mensajes: 27
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: Leer/Cargar Fichero de Texto de Matriz con campos boolean

Es correcto lo que comentas, sin embargo para poder hacer el cast de string a boleano, es necesario que el valor que estes leyendo sea compatible para este tipo de conversiones, es decir no puedes convertir la cadena "Hola" a boleano ya que es un valor incorrecto, si no me equivoco puedes convertir a boleano los valores "true/false" (como lo comentas) o bien el "1/0", cuando 1=true y 0=false;
Saludos y de favor comentame si pudiste solucionar tu problema.

Última edición por khristian_696; 15/06/2012 a las 10:38

Etiquetas: boolean, campos, fichero, matriz
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 21:56.