Java 获取盘符及分类

import java.io.File;

  

import javax.swing.filechooser.FileSystemView;

  

public class ByteTest {

  

    public static void main(String[] args) {

        FileSystemView sys = FileSystemView.getFileSystemView();

        File[] files = File.listRoots();

        for(int i = 0; i < files.length; i++) {

            System.out.println(files[i] + " -- " + sys.getSystemTypeDescription(files[i]));

        }

    }

}

 

输出:

C:\ -- 本地磁盘
D:\ -- 本地磁盘
E:\ -- 本地磁盘
F:\ -- 本地磁盘
G:\ -- CD 驱动器
J:\ -- 可移动磁盘
K:\ -- CD 驱动器

 

按理说应该返回的是一个类型标识,就像 Windows API 中 GetDriveType(http://msdn.microsoft.com/zh-cn/library/aa364939%28v=VS.85%29.aspx) 返回的那些,但是在 Java 中我好像没有找到。

FileSystemView#getSystemTypeDescription 方法只能将就着用用,如果要有更高的要求,只能通过 Windows API 和 JNI 去实现了。

posted @ 2013-11-20 13:56  剑握在手  阅读(2085)  评论(0编辑  收藏  举报
返回顶部↑