La plataforma de android nos da varias facilidades para el almacenamiento permanente de datos, es decir los datos no se borra cuando se cierra la aplicaci贸n.
Almacenar datos en nuestro dispositivo android empleando un archivo de texto que se guardar谩 en el almacenamiento interno del equipo.
En esta oportunidad se desarrollar谩 una aplicaci贸n que permitta almacenar notas en un control Edtitext y cuando se presione un bot贸n almacenar los datos del editText en un archivo de texto llamado "notas.txt"
Para el dise帽o de la interfaz visual de la aplicaci贸n agregar los controles Editext y un button, el EditText modificamos su id, su inputType indicamos que sea multilinea y luego el dise帽o segun lo deseen cada desarrollador, en esta oportunidad lo cambie de fondo de color y tambien de color de texto, su tama帽o.
Para el boton lo que se hizo es un metodo en la clase mainactivity llamado guardar y llamarlo desde el onclick del boton, tambien el texto indicamos que sera guardar.
Dise帽o de la Interfaz
Una vez realizado el dise帽o primero implementamos las lineas de codigo para guardar en un archivo de texto, esto se hace en la clase mainactivity, creamos un metodo llamado guardar, realizamos un try catch, dentro del try llamamos a OutputStreamWriter y al constructor de dicha clase le enviamos el datos que retorna el metodo openFileOutput y le pasamos el nombre que sera del archivo de texto y el modo de apertura.
Seguidamente si el archivo se creo correctamente procedemos a llamar al metodo write y le pasamos el string a guardar, que sera el editText convertido a string con toString(), luego limpiamos el buffer con el metodo flush, y cerramos el archivo.
Llamamos al catch y lanzamos un excepcion IOexcepcion si ocurre un error que muestre en consola.
Luego mostramos una alerta con toast indicando que los datos se guardaron e indicamos el tiempo de duraci贸n del toast, luego lo mostramos y llamamos a un metodo finish(), para que cierre la aplicac贸n, con esto tendremos creado y almacenado lo escrito en el editext.
Para recuperar los datos almacenados creamos un arreglo llamados archivos que se inicializara con el metodo fileList(),llamamos a un metodo boobleado parq consultar si el arreglo de tipo string existe,
si es asi se crea un objeto inputstreamreader llamado archivo y le pasamos el contructor que devuelve un metodo openfileinput.
Creamos un objeto de la clase bufferreader y le pasamos el objeto de inputstreamreader, leemos la primer linea del archivo de texto y almacenamos en linea, creamos un variable string llamado todo, que esta vacio,
consultamos con while si linea es diferente de null si es diferente que todo sea sumando con linea y concatenado con salto de linea, seguido pasamos a la siguiente linea leemos y pasomos al dato todos esa linea hasta que no quede linguna linea.
cerramos el buffer, luego cargamios el edittext ccon el contenido del string todos.
String[] archivos = fileList(); if(existe(archivos,"notas.txt")){ try { InputStreamReader archivo = new InputStreamReader(openFileInput("notas.txt")); BufferedReader bufferedReader = new BufferedReader(archivo); String linea = bufferedReader.readLine(); String todo=""; while (linea != null){ todo=todo + linea + "\n"; linea = bufferedReader.readLine(); } bufferedReader.close(); archivo.close(); edtingresado.setText(todo); }catch (IOException e){ System.out.println("Error code : " + e); } }
Archivo Java
Vide Tutorial
Suscribanse al canal y dale activar la campanita 馃敂 , si les gusto馃挀 el contenido, dale compartir.
No hay comentarios:
Publicar un comentario