上一篇讲了怎么对JConfig进行配置和初始化,这章主要对JConfig的使用进行简单的阐述
一、使用文件
JConfig能让你获得更多的磁盘,文件,目录的信息,以及让你列举出磁盘和目录的内容。在jconfig里,所有的对象都是实现DiskObject接口来描述磁盘,目录,文件和别名。层次结构如下:
DiskObject
-----DiskVolume(描述磁盘)
-----DiskFile(描述目录和文件)
---------DiskAlias(描述别名)
在下面将分别列出可以获得这些对象的几种方法
1.列举出用户的硬盘信息
FileRegistry.getVolumes()方法会返回的一个数组。这个数组包含了用户当前所安装的硬盘信息。你可以得到这些磁盘的信息并列举出他们的内容
2.列举出磁盘和目录下的内容
使用iterate方法来实现DiskObject接口后可以让你列举出磁盘和目录的内容使用这个方法,你能创建出一个实现DiskFilter接口的方法的对象,并将这个对象传递给DiskObject接口的iteratoe()方法。DiskFilter的visit()方法将会被作为一个DiskObject对象来调用.这个DiskObject对象包含了每个物体的描述内容。
3.将java.io.File对象转换成JConfig DiskObject对象
4.获得磁盘,目录和文件的信息
一旦你实现了DiskObject接口,你就能获得一些信息,例如他们的(磁盘,目录,文件)创建和修改信息,图标信息,版本信息和FinderInfo,etc.
5.获得文件的设置信息
下面这个表格里的数据是从DiskFile.getFlags()方法里获得的。并且也能使用DiskFile.setFlags()方法进行设置。
这些flag是DiskFile接口里的public static方法。and its value is an in with just one bit on.
DiskFile flags
JConfig value
Win
Mac
Nix
FILE_EXECUTABLE
G
G
.
FILE_DIR
.
.
.
FILE_HIDDEN
.
.
.
FILE_STATIONERY
.
.
.
FILE_NAME_LOCKED
.
.
.
FILE_CUSTOM_ICON
.
.
.
FILE_HAS_BNDL
.
.
.
FILE_BEEN_INITED
.
.
.
FILE_NO_INITS
.
.
.
FILE_SHARED
.
.
.
FILE_READONLY
.
.
.
FILE_SYSTEM
.
.
.
FILE_ARCHIVE
.
.
.
FILE_DEVICE
.
.
.
FILE_TEMP
.
.
.
FILE_SPARSE
.
.
.
FILE_REPARSEPOINT
.
.
.
FILE_COMPRESSED
.
.
.
FILE_OFFLINE
.
.
.
FILE_NOT_CONTENT_INDEXED
.
.
.
FILE_ENCRYPTED
.
.
.
二、使用别名
当一个对象正在实现DiskObject接口,你可以使用java的“instanceof”关键字去确定这个对象是不是一个alias。如果这个对象实现了DiskAlias接口,那么他是一个alias.
当一个对象正在实现DiskAlias接口,你能决定这个alias使用FileRegistry.resolveAlias()方法。你能选择是否允许用户使用它。
FileRegistry.createAlias()方法能让你创建一个别名
待续...