2010-01-25 2 views
3

Existe-t-il de manière en Java (1.6+) pour récupérer la structure de disque de partition? (Par exemple: NTFS, FAT32, HFS + ou EXT3.)Structure de partition de disque

Les bibliothèques externes sont autorisées.

Merci,
Gianni

+0

Voulez-vous dire la table de partition du disque dur (comme dans la question)? Ou l'accès par programme aux informations du système de fichiers (comme le suggère l'abbr dans les parenthèses)? –

+0

Oui, quelque chose comme 'String value = MySystem.getPartitionStructure();' et sur Mac OS X la chaîne 'value' serait' HFS + '. – Gianni

+0

Cela dépendra de la plateforme, je pense. –

Répondre

1

Vous pouvez utiliser Runtime.getRuntime(). Exec() pour exécuter une commande comme sfdisk puis analyser la sortie.

sfdisk -l /dev/hdc 

Malheureusement, il n'est pas très indépendant de la plate-forme.

+0

Eh bien, je pensais à écrire une classe qui exécuterait des commandes dépendant du système et extraire les informations dont j'ai besoin. Mais je ne veux pas réinventer la roue, vous voyez. S'il y a une bibliothèque Java qui pourrait le faire pour moi, je n'ai pas besoin de le coder moi-même. Merci. – Gianni

1

sous OS X la sortie de "monter" comprend le système de fichiers:

ravn:~ ravn$ mount 
/dev/disk0s2 on/(hfs, local, journaled) 
devfs on /dev (devfs, local, nobrowse) 
map -hosts on /net (autofs, nosuid, automounted, nobrowse) 
map auto_home on /home (autofs, automounted, nobrowse) 

Ici / est de type hfs

+0

Eh bien, je pensais à écrire une classe qui exécuterait des commandes dépendant du système et extrairait les informations dont j'ai besoin. Mais je ne veux pas réinventer la roue, vous voyez. S'il y a une bibliothèque Java qui pourrait le faire pour moi, je n'ai pas besoin de le coder moi-même. Merci. – Gianni

+0

Apparemment, personne n'en a besoin. Pourquoi tu? –

+0

J'écris un programme et il a besoin de la structure du disque. Comme je l'ai dit plus haut, j'ai déjà commencé à écrire ma propre bibliothèque. – Gianni

1

Si this ne vous aide pas alors - pas. Vous aurez besoin d'une bibliothèque native et d'un code dépendant du système d'exploitation pour cela.

+0

Merci pour la réponse. Mais je n'aime pas la technique décrite dans ce fil. – Gianni

Questions connexes