Tem como ler arquivo TXT?

11 respostas
Turbo_Drive

Boa tarde a todos.

Gostaria de saber como se lê um arquivo txt utilizando J2ME. Fiz várias pesquisas, mas não encontrie nada sobre J2ME, somente J2SE.

Grato pela atenção.

11 Respostas

P

Turbo_Drive:
Boa tarde a todos.

Gostaria de saber como se lê um arquivo txt utilizando J2ME. Fiz várias pesquisas, mas não encontrie nada sobre J2ME, somente J2SE.

Grato pela atenção.

Este link te dá dois métodos para isto.

http://www.javafree.org/javabb/viewtopic.jbb?t=849377

kotonet_ga

Você pode utilizar este método que retorna uma String com o conteudo do arquivo que esta na pasta da aplicação:

public String lerArquivo(){
           try{
              int chr = 0;
              InputStream arquivo = getClass().getResourceAsStream("config.txt");
              StringBuffer stb = new StringBuffer();
              while ((chr = arquivo.read())!= -1)  {
                    stb.append((char)chr);
                }
              return stb.toString();
              }catch (Exception e){
                e.printStackTrace();
              }
           return null;
        }
sedmalakian

a Maneira que eu conheço é mais ou menos assim:

//vc precisa usar o fileBrowser para manipular o diretorio, e o textbox para ler o arquivo.

private FileBrowser fileBrowser;
private TextBox textBox;

//no commandAction você chama o metodo para ler o arquivo e pede para abrilo no textbox

public void commandAction(Command command, Displayable displayable) {
     if (displayable == fileBrowser) {
            if (command == FileBrowser.SELECT_FILE_COMMAND) {

                lerArquivo();
                switchDisplayable(null, getTextBox());

     }
}


public void lerArquivo() {
        try {
            FileConnection file = getFileBrowser().getSelectedFile();
            InputStream fis = file.openDataInputStream();
            byte[] b = new byte[1024];
            int tamanho = fis.read(b, 0, 1024);
            if (tamanho > 0) {
                getTextBox().setString(new String(b, 0, tamanho));
            }
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        
    }
ferrarezi

Valeu kotonet_ga, muito útil seu exemplo, tava googlano até agora. :smiley:

A

Onde eu armazeno o arquivo txt???

P

Do mesmo lugar de onde foi lido, ou no RMS.

R

Não consigo ler nem gravar em lugar nenhum… só recebo permissão negada… preciso gravar na memória interna. Consigo copiar do pc para o celular (bluetooth) mas na hora de gravar ou ler um arquivo pela minha aplicação, necas… ??

vfmartins

este tópico resolveu meu problema para leitura de arquivo texto:

http://www.guj.com.br/posts/list/143035.java

R

O aparelho que estou usando implementa JSR75 sim, no caso descobri que ele não permiti trabalhar com o arquivo em qq pasta. Quando coloquei o arquivo dentro da pasta de imagens ele permitiu a leitura, mas creio que deve ser por causa da aplicação não ser assinada. imagino que assinando a aplicação o arquivo possa ser lido de qq lugar…

JJjava
sedmalakian:
a Maneira que eu conheço é mais ou menos assim:
//vc precisa usar o fileBrowser para manipular o diretorio, e o textbox para ler o arquivo.

private FileBrowser fileBrowser;
private TextBox textBox;

//no commandAction você chama o metodo para ler o arquivo e pede para abrilo no textbox

public void commandAction(Command command, Displayable displayable) {
     if (displayable == fileBrowser) {
            if (command == FileBrowser.SELECT_FILE_COMMAND) {

                lerArquivo();
                switchDisplayable(null, getTextBox());

     }
}


public void lerArquivo() {
        try {
            FileConnection file = getFileBrowser().getSelectedFile();
            InputStream fis = file.openDataInputStream();
            byte[] b = new byte[1024];
            int tamanho = fis.read(b, 0, 1024);
            if (tamanho > 0) {
                getTextBox().setString(new String(b, 0, tamanho));
            }
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        
    }
Olá, tem como fazer ler linha a linha?, eu precisva ler linha a linha e colocar os dados em um vetor, para depois colocar em recordStore. Grato.
kotonet_ga

É só pegar a quebra da linha:

public String lerArquivo(){
           try{
              int chr = 0;
              InputStream arquivo = getClass().getResourceAsStream("config.txt");
              StringBuffer stb = new StringBuffer();
              while ((chr = arquivo.read())!= -1)  {
                    stb.append((char)chr);
                    char st = (char)chr;
                    if (st=='\n') {
                        System.out.println("Quebra de linha");
                  }
                }
              return stb.toString();
              }catch (Exception e){
                e.printStackTrace();
              }
           return null;
        }
Criado 21 de setembro de 2007
Ultima resposta 13 de out. de 2010
Respostas 11
Participantes 9