Problema ao gravar no sistemas de arquivos do celular

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 :cry: 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…