Dificuldade com a Linguagem

Boa tarde pessoal,

Sou iniciante em J2ME, mas preciso desenvolver nesta linguagem uma aplicação que leia um txt do cartão de memória e mostre seu conteúdo na tela para o usuário.
Após muitas pesquisas (até aqui mesmo no fórum), fiz o código postado abaixo, mas aparentemente ele está incorreto, pois ao testar no compilador a validação sempre cai em “Arquivo não encontrado!”, mas eu ja criei o arquivo em: C:\Documents and Settings\Usuario\javame-sdk\3.0\work\0\appdb\filesystem
No palm também não funciona, ao executar este aplicativo nele, recebo a mensagem de erro: “Throwable: javax.microedition.io.file.FileConnection”

O que estou fazendo de errado??
Agradeço muito a quem se dispor a ajudar!

[code] public vfm() throws IOException
{

    cmdsair = new Command("Sair", Command.EXIT, 1);
    form = new List("TXT", List.IMPLICIT);
    form.addCommand(cmdsair);
    form.setCommandListener(this);

    new Thread()
    {

        public void run()
        {
            listarTudo();
        }
    }.start();

}


private void listarTudo()
{
    String nomeArquivo = "dados.txt";
    try
    {
        FileConnection fc = (FileConnection) Connector.open("file:///SDCard/" + nomeArquivo);
        form.deleteAll();
        if (!fc.exists())
        {
            form.append("Arquivo não encontrado!",null);
        }
        else
        {
            InputStream is = fc.openInputStream();
            byte b[] = new byte[1024];
            int length = is.read(b, 0, 1024);
            form.append("Conteúdo do arquivo "+nomeArquivo + ": \n"+ new String(b, 0, length),null);
        }
        fc.close();
    }
    catch (Exception e)
    {
        e.printStackTrace();
    }
}[/code]

Passa esse diretório como argumento deste método.

public void varredura(File dir) throws IOException {

	if (dir.isDirectory()) {

		String list[] = dir.list();
		
		if(list.length == 0){
			throw new Error("Não existem arquivos nesse diretório!");
		}
		
		for(int i = 0; i < list.length; i++){
			
			if(list[i].endsWith("TXT") || list[i].endsWith("txt")){		
				
				arquivo = dir + "\\" + list[i];
				String linha;
				
				BufferedReader leitor = new BufferedReader(new FileReader(arquivo));

                    }

          } else {
                System.out.println("Não é um diretório");
          }

}

Ei, vocês… podem dar uma lida nesse tópico aqui?
http://www.guj.com.br/posts/list/50115.java

E, se possível, editar os posts aí em cima? A comunidade agradece. :slight_smile:

[quote=Rafa Ferrari]Passa esse diretório como argumento deste método.

public void varredura(File dir) throws IOException {

	if (dir.isDirectory()) {

		String list[] = dir.list();
		
		if(list.length == 0){
			throw new Error("Não existem arquivos nesse diretório!");
		}
		
		for(int i = 0; i < list.length; i++){
			
			if(list[i].endsWith("TXT") || list[i].endsWith("txt")){		
				
				arquivo = dir + "\\" + list[i];
				String linha;
				
				BufferedReader leitor = new BufferedReader(new FileReader(arquivo));

                    }

          } else {
                System.out.println("Não é um diretório");
          }

}
[/quote]

Por favor Rafa Ferrari você pode me explicar o que você quis dizer, é que eu não entendi.

Muito obrigado!

Dentro de appdb/filesystem crie um diretório chamado SDCard e mova o teu arquivo pra dentro dele. Tente executar de novo.

Falou.

[quote=wagnerfrancisco]Dentro de appdb/filesystem crie um diretório chamado SDCard e mova o teu arquivo pra dentro dele. Tente executar de novo.

Falou.[/quote]

Tentei fazer isso mas não funcionou.
Eu tenho que mudar algo no fonte também?

Detalhe, aparece a seguinte mensagem antes de cair no if (mas ja aparecia antes)

‘projeto’ wants to read from the local file system.
Is it to read your files?

o que eu faço para resolver?

Bom dia pessoal…

e aí, alguem sabe me ajudar??

eu ainda não consegui…

Por favor, quem souber poste aqui…

Obrigado!

Fico aguardando

será que o problema não é no fonte??

eu penso que possa ser alguma configuração que está faltando.

Eu utilizo a IDE NetBeans 6.7.1 com o Java SE Development Kit 6u13

Alguém sabe se existe alguma incopatibilidade?? Ou alguma configuração para esse tipo de funcionalidade?

Agradeço a quem se dispor a ajudar!
Continuo aguardando

Pessoal, consegui resolver parte do meu problema!
Eu alterei as seguintes linhas:

String nomeArquivo = "file:///root1/dados.txt"; try { FileConnection fc = (FileConnection)Connector.open(url, Connector.READ_WRITE);

e descobri que este é o diretório correto:
C:\Documents and Settings\Usuario\j2mewtk\2.5.2\appdb\DefaultColorPhone\filesystem\root1

Bom, agora funcionou corretamente no emulador, mas ainda continua não funcionando no Palm
ele continua dando erro na API
O que será que é?

Fico no aguardo de ajuda!!
Obrigado

Consegui resolver meu problema!!!

Segue descrição caso alguém passe por isso:

O erro acontecia por não ter instalado no palm uma JVM compatível com a API JSR 75
Foi só baixar e instalar o JVM 5.7.2 e o aplicativo funcionou normalmente.

Muito obrigado a todos que tentaram me ajudar!!