4,52/5
(83 opiniones)
|11910 alumnos|Fecha publicación: 07/09/2004
public RecordEnumeration enumerateRecords(RecordFilter
filtro,
RecordComparator, comparador,boolean
Actualizar)
Los dos primeros parámetros sirven para personalizar el recorrido
de los registros. No entraremos en detalle, pero, gracias al
primero podremos filtrar la búsqueda, y con el segundo podemos
recorrer los registros de forma ordenada. El parámetro Actualizar
indica si la enumeración debe actualizarse cuando realicemos alguna
operación de inserción o borrado de registros. Si vas a hacer un
recorrido rápido por los registros es mejor ponerlo a false para
evitar la sobrecarga.
RecordEnumeration registro = null;
try {
registro = recordStore.enumerateRecords(null,
null, false);
while (registro.hasNextElement())
System.out.println
(registro.nextRecordId());
} catch (Exception e) {}
Hay dos métodos interesantes
del RecordEnumeration: hasNextElement() que devolverá el valor true
si hay un siguiente elemento disponible para ser leído. Cada vez
que leemos un elemento se adelanta el puntero al siguiente. El
método nextRecordId() devuelve el identificador del siguiente
registro.
El siguiente código muestra un ejemplo completo de uso de RMS.
import java.io.*;
import javax.microedition.midlet.*;
import javax.microedition.rms.*;
public class RMS extends MIDlet {
// nombre de la BD
static final String BD = "datos";
String dato;
int id, i;
char b;
public RMS() {
RecordStore rs =
null;
// Borramos
la BD si tenía algo
try {
RecordStore.deleteRecordStore(BD);
} catch( Exception e
){}
try {
// Abrimos el recordStore
rs = RecordStore.openRecordStore(BD, true);
guardaRegistro(rs,"Datos del registro 1");
guardaRegistro(rs,"Datos del registro 2");
guardaRegistro(rs,"Datos del registro 3");
// Leemos los registros
RecordEnumeration registros = rs.enumerateRecords(null, null,
false);
// Recorremos todos los elementos
while (registros.hasNextElement()) {
// Obtenemos el ID del siguiente registro
verRegistro(rs, registros.nextRecordId());
}
rs.closeRecordStore();
} catch(
RecordStoreException e ){
System.out.println( e );
}
notifyDestroyed();
}
public void verRegistro(RecordStore
rs, int id) {
try {
ByteArrayInputStream bais = new
ByteArrayInputStream(rs.getRecord(id));
DataInputStream is = new DataInputStream(bais);
// leemos el registro
try {
dato = is.readUTF();
System.out.println("-> "+dato);
} catch (EOFException eofe) {
} catch (IOException ioe) {}
} catch
(RecordStoreException e) {}
}
public void
guardaRegistro(RecordStore rs, String dato) {
ByteArrayOutputStream
baos = new ByteArrayOutputStream();
DataOutputStream os =
new DataOutputStream(baos);
try {
// guadar el dato
os.writeUTF(dato);
} catch (IOException
ioe) {}
// extraer el
array de butes
byte[] b =
baos.toByteArray();
// lo
añadimos al recordStore
try {
rs.addRecord(b, 0, b.length);
} catch
(RecordStoreException rse) {}
}
public void destroyApp( boolean unconditional ) {}
public void startApp() {}
public void pauseApp() {}
}
Hay 83 opiniones. Opina sobre este curso.
| Cursos | Valoración | Alumnos | Vídeo | |
|---|---|---|---|---|
|
Introducción a Oracle En el curso se introducen los conceptos básicos para saber que es un Gestor de Bases de Datos Relacional, y la utilidad de Oracle para este cometido.... [01/02/06] |
|
16.011 | ||
|
Webs dinámicas con PHP El lenguaje PHP es un lenguaje de programación de estilo clásico, nada que ver con el HTML, XML o WML. Se parece mucho más al Java o Javascript pero, a diferencia de esto... [10/09/04] |
|
11.439 | ||
|
Técnicas para el desarrollo de computación móvil (orientado a PDA) Uno de los nuevos paradigmas en el desarrollo de proyectos informáticos es la computación móvil (computación Ubicua). Aquí se verá todo lo que involucra la creación de un... [31/03/06] |
|
1.307 | ||
Publicar en
del.icio.us
digg
meneame