Manipulando RMS(Gravando e Lendo)

4 respostas
Helder_Ribeiro

Bom pessoal o problema que estou enfrentando é o seguinte....
Não estou conseguindo buscar dados gravados no BD(RMS).
Consigo criar o banco de dados e talvez gravar nele, + não consigo busca o registro.
Vale resaltar que mando apenas um registro para o banco(tamanho de +-360 Caracteres), tem algum problema assim ?

O jeito que preciso é pegar esses dados de colocar dentro de um StringItem, pq eu não vou manipular os dados, vou apenas visualizar e salvar na memória do celular caso queira.

Abaixo vão os métodos que estou usando....
public void criaBD(){  
//Método usado para criar o Banco (Aqui está OK)  
        try{  
        rsNomes = RecordStore.openRecordStore("bdDados", true);  
        System.out.println("Banco criado ou aberto com Sucesso");  
        System.out.println("Nome do Banco: "+ rsNomes.getName());  
        System.out.println("Numero de Registros: "+rsNomes.getNumRecords());  
        System.out.println("Espaco Ocupado: "+rsNomes.getSize());  
        System.out.println("Espaco Disponivel: "+rsNomes.getSizeAvailable());  
  
  
        }catch(Exception erro){  
        System.out.println("Não foi possivel criar o banco");          
        }  
    }  
  
  
//Método que grava no BD os registros  
//Vale ressaltar que a variével contreudo recebe + de 360 caracteres....  
//Aqui eu ja não sei se está OK  
public void recebeDadosBanco(String conteudo){  
        try{  
            ByteArrayOutputStream btStream = new ByteArrayOutputStream();  
            DataOutputStream dStream = new DataOutputStream(btStream);  
            dStream.writeUTF(conteudo);              
            dStream.flush();  
  
            byte [] dados = btStream.toByteArray();  
            rsNomes.addRecord(dados, 0, dados.length);  
  
            btStream.close();  
            dStream.close();  
  
        }catch(Exception e){  
  
        }  
    }  
  
//Aqui seria para ler o conteúdo que está gravado no "Celular"  
//Aqui está incompleto pq n sei se está OK a parte de cima  
  
public void leBD(){  
        try{             
  
            ByteArrayInputStream inputStream = null;  
            DataInputStream dataStream = null;  
  
            }  
  
//                dataStream.close();  
//                inputStream.close();  
  
        }catch(Exception e){  
        System.out.println("Erro ao Ler o Banco de Dados");  
        }  
    }
Qualquer dica/sugestão ficaria bastante grato.....

4 Respostas

j0nny
Helder Ribeiro:
Bom pessoal o problema que estou enfrentando é o seguinte.... Não estou conseguindo buscar dados gravados no BD(RMS). Consigo criar o banco de dados e talvez gravar nele, + não consigo busca o registro. Vale resaltar que mando apenas um registro para o banco(tamanho de +-360 Caracteres), tem algum problema assim ?

O jeito que preciso é pegar esses dados de colocar dentro de um StringItem, pq eu não vou manipular os dados, vou apenas visualizar e salvar na memória do celular caso queira.

Abaixo vão os métodos que estou usando....
public void criaBD(){  
//Método usado para criar o Banco (Aqui está OK)  
        try{  
        rsNomes = RecordStore.openRecordStore("bdDados", true);  
        System.out.println("Banco criado ou aberto com Sucesso");  
        System.out.println("Nome do Banco: "+ rsNomes.getName());  
        System.out.println("Numero de Registros: "+rsNomes.getNumRecords());  
        System.out.println("Espaco Ocupado: "+rsNomes.getSize());  
        System.out.println("Espaco Disponivel: "+rsNomes.getSizeAvailable());  
  
  
        }catch(Exception erro){  
        System.out.println("Não foi possivel criar o banco");          
        }  
    }  
  
  
//Método que grava no BD os registros  
//Vale ressaltar que a variével contreudo recebe + de 360 caracteres....  
//Aqui eu ja não sei se está OK  
public void recebeDadosBanco(String conteudo){  
        try{  
            ByteArrayOutputStream btStream = new ByteArrayOutputStream();  
            DataOutputStream dStream = new DataOutputStream(btStream);  
            dStream.writeUTF(conteudo);              
            dStream.flush();  
  
            byte [] dados = btStream.toByteArray();  
            rsNomes.addRecord(dados, 0, dados.length);  
  
            btStream.close();  
            dStream.close();  
  
        }catch(Exception e){  
  
        }  
    }  
  
//Aqui seria para ler o conteúdo que está gravado no "Celular"  
//Aqui está incompleto pq n sei se está OK a parte de cima  
  
public void leBD(){  
        try{             
  
            ByteArrayInputStream inputStream = null;  
            DataInputStream dataStream = null;  
  
            }  
  
//                dataStream.close();  
//                inputStream.close();  
  
        }catch(Exception e){  
        System.out.println("Erro ao Ler o Banco de Dados");  
        }  
    }
Qualquer dica/sugestão ficaria bastante grato.....

Só falta o principal, o método lerBd() :D

vfmartins

cara, da uma olhada nesse link abaixo:

http://www.javamovel.com/2009/06/floggy-framework-de-persistencia-de_2660.html

ele te ensina fazer o que está precisando, especificamente no item "Carregando um objeto armazenado"
caso deseja fazer algo mais elabora veja o item “Usando um filtro para encontrar objetos específicos”

abraços

vfmartins

vfmartins:
cara, da uma olhada nesse link abaixo:

http://www.javamovel.com/2009/06/floggy-framework-de-persistencia-de_2660.html

ele te ensina fazer o que está precisando, especificamente no item "Carregando um objeto armazenado"
caso deseja fazer algo mais elabora veja o item “Usando um filtro para encontrar objetos específicos”

abraços

opa, esqueci de avisar que isto é feito utilizando floggy (que é um framework de persistencia de dados, uma maneira bem mais facil de trabalhar em J2ME)

Helder_Ribeiro

vfmartins:
vfmartins:
cara, da uma olhada nesse link abaixo:

http://www.javamovel.com/2009/06/floggy-framework-de-persistencia-de_2660.html

ele te ensina fazer o que está precisando, especificamente no item "Carregando um objeto armazenado"
caso deseja fazer algo mais elabora veja o item “Usando um filtro para encontrar objetos específicos”

abraços

opa, esqueci de avisar que isto é feito utilizando floggy (que é um framework de persistencia de dados, uma maneira bem mais facil de trabalhar em J2ME)

Vlw, vou dar uma olhada sim…

Criado 2 de março de 2010
Ultima resposta 2 de mar. de 2010
Respostas 4
Participantes 3