Está en la página 1de 2

Aplicaciones móviles

APLICACIONES MÓVILES
Vamos a crear un nuevo proyecto con una actividad vacía (Empty activity). La actividad tendrá el nombre
MainActivity. Dentro del proyecto vamos a editar la interfaz de esta actividad para que contenga los
componentes y las restricciones que se muestran en la figura 1. Debemos crear las cadenas de caracteres
necesarias para que los botones tomen el nombre Write y Read (revisar la práctica 2).

Figura 1. Interfaz de la actividad principal

1. Implementar el método para grabar información

En primer lugar vamos a crear un método llamado writeFile() en MainActivity.java.

public void writeFile(View view) {

Luego, dentro de este método, vamos a utilizar el método openFileOutput de la clase FileOutputStram
para acceder o crear un archivo de la memoria interna y grabar información en él. El nombre de nuestro
archivo será “myfile”.

String filename = "myfile";


FileOutputStream outputStream;

Vamos a definir un string con el mensaje que deseamos grabar en el archivo:

1
Aplicaciones móviles

String string = "Sistemas sistemas sistemas sistemas!";

A continuación, vamos a almacenar nuestro mensaje en el archivo de la memoria interna. Note que, al
escribir los archivos, escribiremos la información como tipo Bytes y no directamente como texto. Para
evitar errores de compilación, enmarcaremos las siguientes instrucciones en una estructura try…catch
para capturar excepciones.

try {
outputStream = openFileOutput(filename, Context.MODE_PRIVATE);
outputStream.write(string.getBytes());
outputStream.close();
}
catch (Exception e){
e.printStackTrace();
System.out.println("File not found" + e);
}

Es momento de asociar este método con el botón Write de nuestra interfaz.

2. Implementar el método para leer información

Vamos ahora a crear un método llamado readFile() en MainActivity.java. En este método vamos a utilizar
la función openFileInput de la clase FileInputStram para acceder al archivo “myfile” de la memoria y leer
la información que contiene. Una vez más, incluiremos este código dentro de una estructura de manejo
de excepciones.

public void readFile(View view) {


String filename = "myfile";
FileInputStream inputStream;

try {
inputStream = openFileInput(filename);
}
catch (Exception e){
e.printStackTrace();
System.out.println("File not found" + e);
}
}

Para leer el contenido de nuestro archivo usaremos el método read. Este método requiere que
indiquemos el número de bytes que debe leer del archivo. Por ello, es necesario conocer primero el
tamaño del mismo mediante la función getChannel().size(). Este código deberá insertarse en la sección
try de nuestro manejador de excepciones.

inputStream = openFileInput(filename);
byte fileContent[] = new byte[(int) inputStream.getChannel().size()];
inputStream.read(fileContent);
String s = new String(fileContent);

Finalmente, vamos a cambiar el texto del textView de nuestra interfaz y poner el valor que hemos
recuperado de nuestro archivo. Este código también deberá insertarse en la sección try de nuestro
manejador de excepciones.

TextView textView = (TextView) findViewById(R.id.textView);


textView.setText(s);

El

También podría gustarte