List of disc devices in a system

L

Lino

Hello,
With File.listRoots() I can get the list of roots (devices) in a
system. The problem I'm having is that I'm getting the DVD unit
although it was empty. Does anybody know how to know if the DVD unit is
empty? With File.exists() I can know it but a message box with the
error appears and I want to avoid the appearing of this box.
Thanks in advance.
 
M

Martin Lansler

Hi Lino,

Well I did not have any problems with my DVD drives, my floppy drive however
caused an error message to be displayed:

import java.io.File;

public class ListRoots {
public static void main(String[] args) {
File[] roots = File.listRoots();
File[] ignoreRoots = new File[] { new File("a:\\") };
listRoots: for (File file : roots) {
for (File ignoreRoot : ignoreRoots) {
if (file.equals(ignoreRoot)) {
System.out.println("[ignored]" + file);
continue listRoots;
}
}
System.out.println((!file.canRead() ? "[not available]" : "") +
file);
}
}
}

Running the code above on a Windows XP gave:
[ignored]A:\
C:\
D:\
[not available]E:\
[not available]F:\
[not available]Z:\

So maybe a workaround would be to ignore the floppy drive as the code above
does - which roots to ignore could be configurable in your application.

Cheers,
Martin.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,020
Latest member
GenesisGai

Latest Threads

Top