Olá… estou com um problema aqui. Estou fazendo um sistema para celular que faz orçamentos. Bom, para enviar os orçamentos feitos para o banco de dados eu gravo os registros em um arquivo .txt já em sql, e depois ele é enviado ao banco. Enfim, para gerar esse arquivo eu uso um loop que fica gravando um “insert” por vez no arquivo. Mas o celular, em toda interação do loop, pergunta “se eu realmente desejo gravar no sistemas de arquivos de celular”. Uma solução que pensei, foi a de concatenar tudo numa String ou StringBuffer e enviar de uma só vez. Porém essa solução vai dar um pouco mais de trabalho
e também pode ocorrer de não haver memória suficiente para essa String se o Orçamento for muito grande. O que eu queria saber é se tem alum jeito de fazer isso sem que essa pergunta apareça, ou que apareça somente uma vez?
t+
Rafael,
Olha, pelo que eu já li pelos foruns tem como sim, mas tem seu custo…
É preciso assinar seu Midlet… Qnt custa eu nao sei te falar…
mas da um procurada nesse sentido…
http://www.guj.com.br/posts/list/62474.java#328402
nesse tópico os caras estao discutindo exatamente isso…
Agora, se vc puder me ajudar, eu nao estou conseguindo nem Permitir q apareça os arquivos existentes no celular, nem gravar…
como vc fez para conseguir criar um arquivo dentro do celular???
Olá, vc tem que importar duas classes:
import javax.microedition.io.Connector;
import javax.microedition.io.file.*;
Depois usa um código parecido com esse:
[code]
public cExportador(){
try {
String uri = System.getProperty(“fileconn.dir.photos”) + “export.txt”;
fc = (FileConnection) Connector.open(uri, Connector.READ_WRITE);
anterior = new StringBuffer(""); //le o conteudo anterior do arquivo para nao perde-lo
if (! fc.exists())
fc.create();
else{
in = new InputStreamReader(fc.openInputStream());
int intCarac = in.read();
while (intCarac != -1){ //Atribui o arquivo anterior ao StringBuffer anterior;
char c = (char) intCarac;
anterior.append(c);
intCarac = in.read();
}
in.close();
}
out = fc.openOutputStream();
saida = new PrintStream(out);
saida.println(anterior.toString()); //gera um stream de saída
} catch (IOException ex) {
ex.printStackTrace();
} catch(SecurityException e){
e.printStackTrace();
}
}
[/code]
Também dá uma lida nesse documento que ajuda:
http://www.forum.nokia.com/info/sw.nokia.com/id/82644083-2f4b-4775-a292-c02d6bf5be57/Introduction_To_The_FileConnection_API_v1_1.zip.html
t+
Rafael, mtissimo obrigado… parece q assim eu vou coneguir alguma coisa…
Vlw mesmo…