Sei sulla pagina 1di 7

FORMATO: GUIA DE APRENDIZAJE PARA LA FORMACIN PROFESIONAL F08 9227 014 / 04 10 Versin 1 PROCESO: EJECUCIN DE LA FORMACIN PROFESIONAL PROCEDIMIENTO:

TO: GESTIN DE PROYECTOS FORMATIVOS


Modelo de Mejora Continua

EJEMPLO DE MANEJO DE REGISTROS RMS (ADICIONAR, ELIMINAR, VER Y ACTUALIZAR) UTILIZANDO EL RECORD STORE

package hello; import javax.microedition.midlet.*; import java.io.*; import java.io.IOException; import java.util.Date; import java.util.Enumeration; import java.util.Vector; import javax.microedition.midlet.*; import javax.microedition.lcdui.*; import javax.microedition.rms.RecordEnumeration; import javax.microedition.rms.RecordStore; import javax.microedition.rms.RecordStoreException; import javax.microedition.rms.RecordStoreNotOpenException;

public class rms1 extends MIDlet implements CommandListener{ private Display pantalla; private Form form; private TextField nombre; private TextField edad;

private Command guardar, salir, ver, borrar, actualizar; private RecordStore rs;

public rms1 () { pantalla = Display.getDisplay(this); form = new Form("Almacenamiento"); nombre = new TextField("Nombre", "", 15, TextField.ANY); edad = new TextField("Edad", "", 3, TextField.NUMERIC); salir = new Command("Salir", Command.EXIT, 0); guardar = new Command("Guardar", Command.OK, 1); ver = new Command("Ver", Command.OK, 2); borrar = new Command("Borrar", Command.OK, 3); actualizar = new Command("Actualizar", Command.OK, 4);

try { rs = RecordStore.openRecordStore("Listado", true); } catch (RecordStoreException ex) { ex.printStackTrace(); }

form.append(nombre); form.append(edad); form.addCommand(guardar); form.addCommand(salir); form.addCommand(borrar); form.addCommand(actualizar);

form.addCommand(ver); form.setCommandListener(this);

public void startApp() {

pantalla.setCurrent(form);

public void pauseApp() { }

public void destroyApp(boolean unconditional) { }

public void commandAction(Command c, Displayable dsplbl) {

if (c == salir){ destroyApp(false); notifyDestroyed(); }

if (c == guardar){

try {

ByteArrayOutputStream baos = new ByteArrayOutputStream(); // Se construye un DataOutputStream para escribir el registro del Record Store DataOutputStream daos = new DataOutputStream(baos);

Date fecha = new Date();

daos.writeUTF(new String(nombre.getString())); daos.writeUTF(fecha.toString()); daos.writeInt(Integer.parseInt(edad.getString())); daos.writeUTF(new String("Prueba")); daos.close(); // Se convierte el ByteArrayOutputStream (baos) a un arreglo de bytes byte[] bytes = baos.toByteArray(); // se invoca addRecord () para agregar el registro al Record Store. rs.addRecord(bytes,0,bytes.length);

} catch (IOException ex) { ex.printStackTrace(); } catch (RecordStoreException ex) { ex.printStackTrace(); } } if (c == ver){

try { byte[] bytes; for (int i = 1; i <= rs.getNumRecords(); i++) {

bytes = rs.getRecord(i); DataInputStream is = new DataInputStream(new ByteArrayInputStream(bytes)); System.out.println("Los Registros son: "+is.readUTF()+" "+is.readUTF()+" "+is.readInt()+" "+is.readUTF());

} } catch (Exception e) {

if (c == actualizar){

try {

ByteArrayOutputStream baos = new ByteArrayOutputStream(); DataOutputStream daos = new DataOutputStream(baos);

Date fecha = new Date();

daos.writeUTF(new String(nombre.getString()));

daos.writeUTF(fecha.toString()); daos.writeInt(Integer.parseInt(edad.getString())); daos.writeUTF(new String("prueba")); daos.close(); byte[] bytes = baos.toByteArray(); rs.setRecord(1, bytes, 0, bytes.length);

} catch (IOException ex) { ex.printStackTrace(); } catch (RecordStoreException ex) { ex.printStackTrace(); }

if (c==borrar){ try {

Vector recordIDs = new Vector(); int lastID = 1; // Se agrega el ID del Vector recordIDs.addElement(new Integer(++lastID)); //Ahora, borramos un registro, encontramos el record ID del registro que queremos eliminar :

Enumeration IDs = recordIDs.elements(); while(IDs.hasMoreElements()) { int id = ((Integer) IDs.nextElement()).intValue(); //Comparar para ver si esto es el registro que desea elimininar // Hacemos el llamado rs.deleteRecord(id); }

} catch (RecordStoreException ex) { ex.printStackTrace(); } }

} }

Nota: Implementar un StringItem para mostrar los registros en el MIDlet y descargar la aplicacin en el dispositivo mvil.

Potrebbero piacerti anche