Dans un premier temps, il faut vérifier si ton terminal contient l'API FileConnection :
System.getProperty("microedition.io.file.FileConnection.version");
si le résultat de cela est null alors tu ne peux pas accéder à des fichiers de ton téléphone.
Dans un deuxième temps, avec FileConnection, tu peux accéder à tout les fichiers de ton téléphone, (mémoire téléphone, carte mémoire...)
pour lister les périphériques :
Enumeration peripheriques = FileSystemRegistry.listRoots();
ensuite rien de très compliqué pour accéder à un fichier, (un exemple de fonction qui accède au FileSystem et retourne une image) :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
private Image chargerImage(String urlImage)
{
Image monImage = null;
try
{
System.out.println("url : " + urlImage);
FileConnection connexionImage = (FileConnection)Connector.open(urlImage);
DataInputStream fluxEntree = connexionImage.openDataInputStream();
byte byteImg[];
int length = (int) connexionImage.fileSize();
if (length != -1)
{
byteImg = new byte[length];
fluxEntree.readFully(byteImg);
monImage = Image.createImage(byteImg,0, byteImg.length);
}
}
catch (Exception aE)
{
System.out.println("fichier non trouvé");
aE.printStackTrace();
}
return monImage;
} |
avec un appel de type :
this.chargerImage("file:///root1/child1/child2/Travel_Skype.png")
cela répond à ta question ?
Partager