JavaTM 2 Platform
Standard Ed. 6

javax.swing.filechooser
類別 FileSystemView

java.lang.Object
  繼承者 javax.swing.filechooser.FileSystemView

public abstract class FileSystemView
extends Object

FileSystemView 是 JFileChooser 的檔案系統網關。由於 JDK1.1 File API 不允許對諸如根分區、檔案型別資訊或隱藏檔案位之類別的資訊進行存取,此類別被設計成能夠直接獲得盡可能多的特定於 OS 的檔案系統資訊。

Java Licensees 可能想要提供 FileSystemView 的不同實作來更好地處理給定作業系統。


建構子摘要
FileSystemView()
           
 
方法摘要
 File createFileObject(File dir, String filename)
          返回根據給定的 filename 在 dir 中建構的 File 物件。
 File createFileObject(String path)
          返回根據給定路徑字元串建構的 File 物件。
protected  File createFileSystemRoot(File f)
          創建針對 f 的新 File 物件,使其對於檔案系統根目錄而言具有正確的行為。
abstract  File createNewFolder(File containingDir)
          創建具有預設目錄名稱的新目錄。
 File getChild(File parent, String fileName)
           
 File getDefaultDirectory()
          返回檔案選擇器的使用者預設起始目錄。
 File[] getFiles(File dir, boolean useFileHiding)
          獲取顯示的(即未隱藏)檔案的列表。
static FileSystemView getFileSystemView()
           
 File getHomeDirectory()
           
 File getParentDirectory(File dir)
          返回 dir 的父目錄。
 File[] getRoots()
          返回此系統的所有根分區。
 String getSystemDisplayName(File f)
          在系統檔案瀏覽器中顯示的檔案、目錄或目錄名。
 Icon getSystemIcon(File f)
          在系統檔案瀏覽器中顯示的檔案、目錄或目錄的圖標。
 String getSystemTypeDescription(File f)
          在系統檔案瀏覽器中顯示的檔案、目錄或目錄型別描述。
 boolean isComputerNode(File dir)
          UI 類別使用此方法來決定是否為電腦節點顯示特殊圖標,例如,“我的電腦”或網路伺服器。
 boolean isDrive(File dir)
          UI 類別使用此方法來決定是否為驅動器或分區顯示特殊圖標,例如,“硬盤”圖標。
 boolean isFileSystem(File f)
          檢查 f 是否表示一個相對於特殊目錄(如 "Desktop")的實際目錄或檔案。
 boolean isFileSystemRoot(File dir)
          判斷 dir 是否是檔案系統(如驅動器或分區)中的階層樹的根。
 boolean isFloppyDrive(File dir)
          UI 類別使用此方法來決定是否為軟盤顯示特殊圖標。
 boolean isHiddenFile(File f)
          返回某個檔案是否被隱藏。
 boolean isParent(File folder, File file)
          在 Windows 中,一個檔案可以出現在多個目錄,但在檔案系統中的父目錄中除外。
 boolean isRoot(File f)
          確定給定檔案是否是導航階層樹中的根。
 Boolean isTraversable(File f)
          如果可以存取檔案(目錄),則返回 true。
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

建構子詳細資訊

FileSystemView

public FileSystemView()
方法詳細資訊

getFileSystemView

public static FileSystemView getFileSystemView()

isRoot

public boolean isRoot(File f)
確定給定檔案是否是導航階層樹中的根。範例:Windows 98 有一個根,即 Desktop 目錄。DOS 中的每個驅動器名都有一個根:C:\D:\ 等等。Unix 有一個根,即 "/" 目錄。 預設實作從 ShellFolder 類別中獲取資訊。

參數:
f - 表示目錄的 File 物件
返回:
如果 f 是導航階層樹中的根,則返回 true
另請參見:
isFileSystemRoot(java.io.File)

isTraversable

public Boolean isTraversable(File f)
如果可以存取檔案(目錄),則返回 true。如果無法遍歷目錄,則返回 false。

參數:
f - File
返回:
如果可以遍歷檔案/目錄,則返回 true,否則返回 false
從以下版本開始:
1.4
另請參見:
JFileChooser.isTraversable(java.io.File), FileView.isTraversable(java.io.File)

getSystemDisplayName

public String getSystemDisplayName(File f)
在系統檔案瀏覽器中顯示的檔案、目錄或目錄名。以 Windows 為例:"M:\" 目錄顯示為 "CD-ROM (M:)"。 預設實作從 ShellFolder 類別獲取資訊。

參數:
f - File 物件
返回:
本機檔案選擇器顯示的檔案名
從以下版本開始:
1.4
另請參見:
JFileChooser.getName(java.io.File)

getSystemTypeDescription

public String getSystemTypeDescription(File f)
在系統檔案瀏覽器中顯示的檔案、目錄或目錄型別描述。以 Windows 為例:"Desktop" 目錄被描述為 "Desktop"。 為本機 ShellFolder 實作中的平臺覆寫此方法。

參數:
f - File 物件
返回:
本機檔案選擇器顯示的檔案型別描述;如果沒有可用的本機資訊,則返回 null。
從以下版本開始:
1.4
另請參見:
JFileChooser.getTypeDescription(java.io.File)

getSystemIcon

public Icon getSystemIcon(File f)
在系統檔案瀏覽器中顯示的檔案、目錄或目錄的圖標。以 Windows 為例:"M:\" 目錄顯示 CD-ROM 圖標。 預設實作從 ShellFolder 類別獲取資訊。

參數:
f - File 物件
返回:
本機檔案選擇器顯示的圖標
從以下版本開始:
1.4
另請參見:
JFileChooser.getIcon(java.io.File)

isParent

public boolean isParent(File folder,
                        File file)
在 Windows 中,一個檔案可以出現在多個目錄,但在檔案系統中的父目錄中除外。例如,該目錄可以是不同於 file.getParentFile() 的 "Desktop" 目錄。

參數:
folder - 表示一個目錄或特殊目錄的 File 物件
file - File 物件
返回:
如果 folder 是一個目錄或特殊目錄,並且包括 file,則返回 true
從以下版本開始:
1.4

getChild

public File getChild(File parent,
                     String fileName)
參數:
parent - 表示一個目錄或特殊目錄的 File 物件
fileName - 存在於 parent 中的檔案或目錄的名稱
返回:
File 物件。它通常使用 new File(parent, fileName) 建構,父級和子級都是特殊目錄時除外,在這種情況下,File 是包含 ShellFolder 物件的套件裝器。
從以下版本開始:
1.4

isFileSystem

public boolean isFileSystem(File f)
檢查 f 是否表示一個相對於特殊目錄(如 "Desktop")的實際目錄或檔案。UI 類別使用此方法來決定在選擇目錄時某個目錄是否可選擇。

參數:
f - File 物件
返回:
如果 f 是實際檔案或目錄,則返回 true
從以下版本開始:
1.4

createNewFolder

public abstract File createNewFolder(File containingDir)
                              throws IOException
創建具有預設目錄名稱的新目錄。

拋出:
IOException

isHiddenFile

public boolean isHiddenFile(File f)
返回某個檔案是否被隱藏。


isFileSystemRoot

public boolean isFileSystemRoot(File dir)
判斷 dir 是否是檔案系統(如驅動器或分區)中的階層樹的根。範例:在 Windows 98 中,對於 "C:\" 返回 true。

參數:
dir - 表示目錄的 File 物件
返回:
如果 f 是檔案系統的根,則返回 true
從以下版本開始:
1.4
另請參見:
isRoot(java.io.File)

isDrive

public boolean isDrive(File dir)
UI 類別使用此方法來決定是否為驅動器或分區顯示特殊圖標,例如,“硬盤”圖標。 預設實作無法知道,因此總是返回 false。

參數:
dir - 目錄
返回:
總是返回 false
從以下版本開始:
1.4

isFloppyDrive

public boolean isFloppyDrive(File dir)
UI 類別使用此方法來決定是否為軟盤顯示特殊圖標。隱含了 isDrive(dir)。 預設實作無法知道,因此總是返回 false。

參數:
dir - 目錄
返回:
總是返回 false
從以下版本開始:
1.4

isComputerNode

public boolean isComputerNode(File dir)
UI 類別使用此方法來決定是否為電腦節點顯示特殊圖標,例如,“我的電腦”或網路伺服器。 預設實作無法知道,因此總是返回 false。

參數:
dir - 目錄
返回:
總是返回 false
從以下版本開始:
1.4

getRoots

public File[] getRoots()
返回此系統的所有根分區。例如,在 Windows 中,這將是“桌面”目錄,而在 DOS 中將是從 A:到 Z:的驅動器。


getHomeDirectory

public File getHomeDirectory()

getDefaultDirectory

public File getDefaultDirectory()
返回檔案選擇器的使用者預設起始目錄。

返回:
表示預設起始目錄的 File 物件
從以下版本開始:
1.4

createFileObject

public File createFileObject(File dir,
                             String filename)
返回根據給定的 filename 在 dir 中建構的 File 物件。


createFileObject

public File createFileObject(String path)
返回根據給定路徑字元串建構的 File 物件。


getFiles

public File[] getFiles(File dir,
                       boolean useFileHiding)
獲取顯示的(即未隱藏)檔案的列表。


getParentDirectory

public File getParentDirectory(File dir)
返回 dir 的父目錄。

參數:
dir - 要查詢的 File
返回:
dir 的父目錄;如果 dirnull,則返回 null

createFileSystemRoot

protected File createFileSystemRoot(File f)
創建針對 f 的新 File 物件,使其對於檔案系統根目錄而言具有正確的行為。

參數:
f - 表示檔案系統根目錄的 File 物件,例如 Unix 上的 "/" 或 Windows 上的 "C:\"。
返回:
新的 File 物件
從以下版本開始:
1.4

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only