Galera,
Quando eu tento acessar o root do PDA ele retornar uma execeção dizendo que não econtrou o caminho:
FileConnection fc = (FileConnection) Connector.open(“file:///root1/”);
Alguem pode me dar uma dica ?
Valeu
Nando
Galera,
Quando eu tento acessar o root do PDA ele retornar uma execeção dizendo que não econtrou o caminho:
FileConnection fc = (FileConnection) Connector.open(“file:///root1/”);
Alguem pode me dar uma dica ?
Valeu
Nando
root1 eh diretório ou arquivo?
se for arquivo basta tirar a última "/"
Se vc colocar um arquivo teste.txt por exemplo e executar o comando
FileConnection fc = (FileConnection) Connector.open("file:///root1/teste.txt");
funciona?
[]s
Bom dia !
eltonk,
O Root é o Diretorio Raiz da PAD, pelo menos segundo o Artigo da “Java Magazine Ed. 21” deveria ser como o root do Linux, então deveriam exister varios roots, como se fossem o C:, D: etc …
Eu até cosigo lista os que existem mais quando tento acessar um deles com o FileConnection, dá o seguinte erro:
Starting emulator in execution mode
Running with storage root DefaultColorPhone
java.lang.IllegalArgumentException: Root is not specified
at com.sun.midp.io.j2me.file.Protocol.openPrim(+196)
at javax.microedition.io.Connector.openPrim(+233)
at javax.microedition.io.Connector.open(+15)
at javax.microedition.io.Connector.open(+6)
at javax.microedition.io.Connector.open(+5)
at aplicativosJ2ME.TestePIM.listaConteudo(+57)
at aplicativosJ2ME.TestePIM.<init>(+22)
at java.lang.Class.runCustomCode(+0)
at com.sun.midp.midlet.MIDletState.createMIDlet(+19)
at com.sun.midp.midlet.Selector.run(+22),
Segue abaixo o codigo que eu Fiz.
/*
* TestePIM.java
*
* Created on 3 de Fevereiro de 2005, 10:41
*/
package aplicativosJ2ME;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.pim.*;
import javax.microedition.io.file.*;
import javax.microedition.io.*;
import java.util.*;
/**
*
* @author nando
* @version
*/
public class TestePIM extends MIDlet {
private List lista;
public TestePIM(){
lista = new List("TestePIM", List.IMPLICIT);
listaConteudo();
}
public void startApp() {
Display.getDisplay(this).setCurrent(lista);
}
public void destroyApp(boolean param) {
}
protected void pauseApp() { }
// Lista o conteudo do PDA
private void listaConteudo(){
try{
String teste = "";
Enumeration ee = FileSystemRegistry.listRoots();
while(ee.hasMoreElements()){
String fileName = (String)ee.nextElement();
lista.append(fileName,null);
teste = fileName;
}
Display.getDisplay(this).setCurrent(lista);
FileConnection fc = (FileConnection) Connector.open("file:///root1");
Enumeration e = fc.list();
while(e.hasMoreElements()){
String fileName = (String)e.nextElement();
if(fileName==null){
lista.append("Vazio",null);
}else{
lista.append(fileName,null);
}
}
Display.getDisplay(this).setCurrent(lista);
fc.close();
}catch(Exception e){
lista.append("Deu Erro",null);
Display.getDisplay(this).setCurrent(lista);
e.printStackTrace();
}
}
}
Se puder me ajudar fico grato !
Valeu cara,
Nando[/code]
Oi galera!
Olha só vc está tentando acessar o root com uma nome de exemplo que a revista deu, use um dos elementos da primeira lista para fazer funcionar.
Modifique a linha:
FileConnection fc = (FileConnection) Connector.open(“file:///root1”);
na função listaConteudo() para:
FileConnection fc = (FileConnection) Connector.open(“file:///” + teste + “/”);
[]'s
Casé