Probleme java (listeRoots) aidez moi svp

Résolu/Fermé
fouzou11 Messages postés 139 Date d'inscription mardi 21 juin 2011 Statut Membre Dernière intervention 4 août 2016 - Modifié par fouzou11 le 2/05/2012 à 21:05
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 - 2 mai 2012 à 23:09
Bonjour,
J'ai fais un programme qui affiche les disque fixes et amovible avec listRoots() mais le probleme c'est que sous windows 7 ca marche parfaitement mais sous ubuntu il m'affiche que le disque fixe ":\ " donc je vous demande s'il y a un methode qui affiche les disque amovible disponible pour resoudre le probleme .


A voir également:

1 réponse

KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
2 mai 2012 à 21:29
Le fonctionnement de Linux est différent de celui de Windows.
Lorsqu'il y a une distinction entre C: D: etc... sur l'un, pour l'autre ce ne sont que des fichiers qui sont dans /media /dev /mnt... c'est à dire que la racine est bien /
En fait la méthode listRoots permet d'identifier quel est le plus haut niveau de fichier lorsque l'on fait "enregistrer sous", il me semble d'ailleurs que sous Windows ce n'est pas C:\ mais plutôt Bureau (car dans Bureau on a Ordinateur puis C:\ D:\ etc)
Donc ton erreur n'en est pas vraiment une, ça ne fait pas ce que tu veux mais il n'y a pas de miracle, lorsque l'on touche d'aussi près à des comportements très différents d'un système à l'autre, Java (qui est multiplate-forme) ne sait pas faire... Ce qu'il faut c'est invoquer des méthodes systèmes propre à chaque OS, et les traiter dans chaque cas (regarde la classe Runtime). Tu peux commencer par regarder la commande "ls /media"
0
fouzou11 Messages postés 139 Date d'inscription mardi 21 juin 2011 Statut Membre Dernière intervention 4 août 2016 4
2 mai 2012 à 21:55
mais la condition c'est que il est interdit d'utiliser les commande shell .
0
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
2 mai 2012 à 22:10
Si c'est juste pour faire un "ls" sans shell, tu peux directement faire un File.listFiles sur "/media", ça revient au même...
0
fouzou11 Messages postés 139 Date d'inscription mardi 21 juin 2011 Statut Membre Dernière intervention 4 août 2016 4
2 mai 2012 à 22:51
mais quand je pose mon tp le prof me dis de l'executer n'importe ou donc y a pas une autre solution par exemple une classe pour les disque amovible ou quelque chose autre
0
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
2 mai 2012 à 23:09
Si tu la trouves indiques la moi, ça peut toujours servir, moi je ne la connais pas !
0