|
CDC 1.1.2 | |||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.io.File
public class File
ファイルおよびディレクトリのパス名の抽象表現です。
ユーザーインタフェースおよびオペレーティングシステムは、システムに依存する「パス名文字列」でファイルおよびディレクトリを指定します。このクラスは、階層的なパス名の抽象的でシステムに依存しないビューを提供します。「抽象パス名」は 2 つのコンポーネントで構成されます。
"/"
、Microsoft Windows UNC パス名の "\\"
など
パス名文字列と抽象パス名の間の変換は、本質的にシステムに依存します。抽象パス名がパス名文字列に変換されると、各名前は 1 つのデフォルトの「区切り文字」で区切られます。デフォルトの名前区切り文字はシステムプロパティー file.separator
で定義され、このクラスの public static フィールドである
および separator
で有効になります。パス名文字列が抽象パス名に変換されると、その中の名前はデフォルトの名前区切り文字で区切られるか、基本となるシステムがサポートするほかの名前区切り文字で区切られます。
separatorChar
パス名は、抽象形式であれ文字列形式であれ、「絶対」と「相対」のいずれかになります。絶対パス名は完全であり、それが示すファイルを見つけるためにほかの情報を必要としません。一方、相対パス名は、ほかのパス名からの情報を利用して解釈される必要があります。デフォルトでは、java.io
パッケージのクラスは、常に現在のユーザーディレクトリを基準に相対パス名を解決します。このディレクトリはシステムプロパティー user.dir
で指定され、通常は Java 仮想マシンの呼び出し元のディレクトリです。
接頭辞の概念は、次のように、UNIX プラットフォームのルートディレクトリ、および Microsoft Windows プラットフォームのドライブ指示子、ルートディレクトリ、および UNC パス名を扱うために使用されます。
"/"
です。相対パス名には接頭辞がありません。ルートディレクトリを示す抽象パス名は、接頭辞 "/"
と空の名前シーケンスを持ちます。
":"
、およびそのパス名が絶対の場合は通常 "\"
の順序で構成されます。UNC パス名の接頭辞は "\\"
です。ホスト名および共有名は名前シーケンスのうちの最初の 2 つの名前になります。ドライブを指定しない相対パス名には接頭辞がありません。
File
クラスのインスタンスは不変です。つまり、一度作成されると、File
オブジェクトで表される抽象パス名は変更されません。
フィールドの概要 | |
---|---|
static String |
pathSeparator
システムに依存するパス区切り文字です。 |
static char |
pathSeparatorChar
システムに依存するパス区切り文字です。 |
static String |
separator
システムに依存するデフォルトの名前区切り文字です。 |
static char |
separatorChar
システムに依存するデフォルトの名前区切り文字です。 |
コンストラクタの概要 | |
---|---|
File(File parent,
String child)
親抽象パス名および子パス名文字列から新しい File のインスタンスを生成します。 |
|
File(String pathname)
指定されたパス名文字列を抽象パス名に変換して、新しい File のインスタンスを生成します。 |
|
File(String parent,
String child)
親パス名文字列および子パス名文字列から新しい File のインスタンスを生成します。 |
メソッドの概要 | |
---|---|
boolean |
canRead()
この抽象パス名が示すファイルをアプリケーションが読み込めるかどうかを判定します。 |
boolean |
canWrite()
この抽象パス名が示すファイルをアプリケーションが変更できるかどうかを判定します。 |
int |
compareTo(File pathname)
2 つの抽象パス名を辞書的に比較します。 |
int |
compareTo(Object o)
この抽象パス名を別のオブジェクトと比較します。 |
boolean |
createNewFile()
この抽象パス名が示す空の新しいファイルを不可分 (atomic) に生成します (その名前のファイルがまだ存在しない場合だけ)。 |
static File |
createTempFile(String prefix,
String suffix)
指定された接頭辞と接尾辞をファイル名の生成に使用して、デフォルトの一時ファイルディレクトリに空のファイルを生成します。 |
static File |
createTempFile(String prefix,
String suffix,
File directory)
指定されたディレクトリで新しい空のファイルを生成し、その名前には、指定された接頭辞および接尾辞の文字列が使用されます。 |
boolean |
delete()
この抽象パス名が示すファイルまたはディレクトリを削除します。 |
void |
deleteOnExit()
この抽象パス名が示すファイルまたはディレクトリが、仮想マシンが終了したときに削除されるように要求します。 |
boolean |
equals(Object obj)
この抽象パス名が指定されたオブジェクトと等しいかどうかを判定します。 |
boolean |
exists()
この抽象パス名が示すファイルまたはディレクトリが存在するかどうかを判定します。 |
File |
getAbsoluteFile()
この抽象パス名の絶対形式を返します。 |
String |
getAbsolutePath()
この抽象パス名の絶対パス名文字列を返します。 |
File |
getCanonicalFile()
この抽象パス名の正規の形式を返します。 |
String |
getCanonicalPath()
この抽象パス名の正規のパス名文字列を返します。 |
String |
getName()
この抽象パス名が示すファイルまたはディレクトリの名前を返します。 |
String |
getParent()
この抽象パス名の親のパス名文字列を返します。 |
File |
getParentFile()
この抽象パス名の親の抽象パス名を返します。 |
String |
getPath()
この抽象パス名をパス名文字列に変換します。 |
int |
hashCode()
この抽象パス名のハッシュコードを計算します。 |
boolean |
isAbsolute()
この抽象パス名が絶対かどうかを判定します。 |
boolean |
isDirectory()
この抽象パス名が示すファイルがディレクトリであるかどうかを判定します。 |
boolean |
isFile()
この抽象パス名が示すファイルが通常のファイルであるかどうかを判定します。 |
boolean |
isHidden()
この抽象パス名が示すファイルが隠しファイルかどうかを判定します。 |
long |
lastModified()
この抽象パス名が示すファイルが最後に変更された時刻を返します。 |
long |
length()
この抽象パス名が示すファイルの長さを返します。 |
String[] |
list()
この抽象パス名が示すディレクトリにあるファイルおよびディレクトリを示す文字列の配列を返します。 |
String[] |
list(FilenameFilter filter)
指定されたフィルタの基準を満たすこの抽象パス名が示しているディレクトリにあるファイルおよびディレクトリを示す文字列の配列を返します。 |
File[] |
listFiles()
この抽象パス名が示すディレクトリ内のファイルを示す抽象パス名の配列を返します。 |
File[] |
listFiles(FileFilter filter)
指定されたフィルタの基準を満たすこの抽象パス名が示しているディレクトリにあるファイルおよびディレクトリを示す抽象パス名の配列を返します。 |
File[] |
listFiles(FilenameFilter filter)
指定されたフィルタの基準を満たすこの抽象パス名が示しているディレクトリにあるファイルおよびディレクトリを示す抽象パス名の配列を返します。 |
static File[] |
listRoots()
有効なファイルシステムのルートをリスト表示します。 |
boolean |
mkdir()
この抽象パス名が示すディレクトリを生成します。 |
boolean |
mkdirs()
この抽象パス名が示すディレクトリを生成します。 |
boolean |
renameTo(File dest)
この抽象パス名が示すファイルの名前を変更します。 |
boolean |
setLastModified(long time)
この抽象パス名が示すファイルまたはディレクトリが変更された時刻を設定します。 |
boolean |
setReadOnly()
この抽象パス名が示すファイルまたはディレクトリにマークを設定し、読み込み操作だけが許可されるようにします。 |
String |
toString()
この抽象パス名のパス名文字列を返します。 |
URL |
toURL()
この抽象パス名を file: URL に変換します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
フィールドの詳細 |
---|
public static final char separatorChar
file.separator
の値の最初の文字を格納するように初期化されます。UNIX システムの場合、このフィールドの値は '/'
、Microsoft Windows システムの場合は '\'
です。
System.getProperty(java.lang.String)
public static final String separator
separatorChar
です。
public static final char pathSeparatorChar
path.separator
の値の先頭文字を使って初期化されます。この文字は、「パスリスト」として指定されるファイルのシーケンス中のファイル名を区切るために使用されます。この区切り文字は、UNIX システムでは ':'
、Microsoft Windows システムでは ';'
です。
System.getProperty(java.lang.String)
public static final String pathSeparator
pathSeparatorChar
です。
コンストラクタの詳細 |
---|
public File(String pathname)
File
のインスタンスを生成します。指定された文字列が空の文字列の場合、結果は空の抽象パス名になります。
pathname
- パス名文字列
NullPointerException
- pathname
引数が null
の場合public File(String parent, String child)
File
のインスタンスを生成します。
parent
が null
の場合、新しい File
のインスタンスは、指定された child
パス名文字列で単一引数の File
コンストラクタを呼び出したように生成されます。
そうでない場合、parent
パス名文字列はディレクトリを示し、child
パス名文字列はディレクトリとファイルのいずれかを示します。child
パス名文字列が絶対の場合、それはシステムに依存する方法で相対パス名に変換されます。parent
が空の文字列の場合、新しい File
のインスタンスは、child
を抽象パス名に変換し、その結果をシステムに依存するデフォルトディレクトリを基準に解決することで生成されます。そうでない場合、各パス名文字列は抽象パス名に変換され、子抽象パス名は親を基準に解決されます。
parent
- 親パス名文字列child
- 子パス名文字列
NullPointerException
- child
が null
の場合public File(File parent, String child)
File
のインスタンスを生成します。
parent
が null
の場合、新しい File
のインスタンスは、指定された child
パス名文字列で単一引数の File
コンストラクタを呼び出したように生成されます。
そうでない場合、parent
抽象パス名はディレクトリを示し、child
パス名文字列はディレクトリとファイルのいずれかを示します。child
パス名文字列が絶対の場合、それはシステムに依存する方法で相対パス名に変換されます。parent
が空の抽象パス名の場合、新しい File
のインスタンスは、child
を抽象パス名に変換し、その結果をシステムに依存するデフォルトディレクトリを基準に解決することで生成されます。そうでない場合、各パス名文字列は抽象パス名に変換され、子抽象パス名は親を基準に解決されます。
parent
- 親抽象パス名child
- 子パス名文字列
NullPointerException
- child
が null
の場合メソッドの詳細 |
---|
public String getName()
public String getParent()
null
を返します。
抽象パス名の「親」は、パス名の接頭辞 (存在する場合) およびパス名の名前シーケンスの各名前 (最後の名前を除く) で構成されます。名前シーケンスが空の場合、パス名は親ディレクトリを示しません。
null
public File getParentFile()
null
を返します。
抽象パス名の「親」は、パス名の接頭辞 (存在する場合) およびパス名の名前シーケンスの各名前 (最後の名前を除く) で構成されます。名前シーケンスが空の場合、パス名は親ディレクトリを示しません。
null
public String getPath()
デフォルトの名前区切り文字
を使用して名前シーケンスの名前を区切ります。
public boolean isAbsolute()
"/"
の場合に絶対です。Microsoft Windows システムの場合、パス名の接頭辞がドライブ指示子でそのあとに "\\"
が続く場合、または接頭辞が "\\"
の場合に、そのパス名は絶対です。
true
、そうでない場合は false
public String getAbsolutePath()
この抽象パス名がすでに絶対である場合は、
メソッドのように単にパス名文字列が返されます。この抽象パス名が空の抽象パス名の場合は、現在のユーザーディレクトリ (システムプロパティー getPath()
user.dir
で示される) のパス名文字列が返されます。そうでない場合、このパス名はシステムに依存する方法で解決されます。UNIX システムの場合、相対パス名は現在のユーザーディレクトリを基準に解決することで絶対になります。Microsoft Windows システムの場合、相対パス名はパス名で示されたドライブの現在のディレクトリがある場合は、それを基準に解決することで絶対になります。ない場合は、現在のユーザーディレクトリを基準に解決されます。
SecurityException
- 必須のシステムプロパティーの値にアクセスできない場合isAbsolute()
public File getAbsoluteFile()
new File(this.getAbsolutePath()
())
と同じです。
SecurityException
- 必須のシステムプロパティーの値にアクセスできない場合public String getCanonicalPath() throws IOException
正規のパス名は、一意の絶対パスです。正規の形式の正確な定義は、システムに依存します。このメソッドはまず、必要に応じてパス名を絶対形式に変換します。結果は、getAbsolutePath()
メソッドを呼び出した場合と同じになります。次に、システムに依存する方法で一意の形式にそのパス名をマップします。このとき、通常は、パス名から "." や ".." などの冗長名を削除し、シンボリックリンクを解決し (UNIX プラットフォームの場合)、ドライブ名の大文字小文字を適切に変換します (Microsoft Windows プラットフォームの場合)。
既存のファイルまたはディレクトリを示す各パス名には、それぞれに固有の正規の形式があります。存在しないファイルまたはディレクトリを示す各パス名にも固有の正規の形式があります。存在しないファイルまたはディレクトリのパス名の正規の形式は、そのファイルまたはディレクトリが作成されたあとの同じパス名の正規の形式とは異なる場合があります。同じように、既存のファイルまたはディレクトリのパス名の正規の形式は、そのファイルまたはディレクトリが削除されたあとの同じパス名の正規の形式とは異なる場合があります。
IOException
- 入出力エラーが発生した場合。正規のパス名を構築することでファイルシステムのクエリーを要求すると発生する
SecurityException
- 必須のシステムプロパティーの値にアクセスできない場合public File getCanonicalFile() throws IOException
new File(this.getCanonicalPath()
())
と同じです。
IOException
- 入出力エラーが発生した場合。正規のパス名を構築することでファイルシステムのクエリーを要求すると発生する
SecurityException
- 必須のシステムプロパティーの値にアクセスできない場合public URL toURL() throws MalformedURLException
file:
URL に変換します。URL の正確な形式はシステムに依存します。この抽象パス名が示すファイルがディレクトリであると判別できた場合、変換後の URL はスラッシュで終わります。
使用上の注意: このメソッドでは、URL 内の不正な文字は自動的にはエスケープできません。新しいコードの抽象パス名を URL に変換するには、まず toURI
メソッドを使用して URI に変換してから、URI.toURL
メソッドを使用してその URI を URL に変換することをお勧めします。注: java.net.URI は、J2ME Foundation Profile などの J2ME CDC プロファイルに入っています。
MalformedURLException
- パスを URL として構文解析できない場合#toURI()
,
URI
,
URI.toURL()
,
URL
public boolean canRead()
true
、そうでない場合は false
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkRead(java.lang.String)
メソッドがファイルへの読み取りアクセスを許可しない場合public boolean canWrite()
true
、そうでない場合は false
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkWrite(java.lang.String)
メソッドがファイルへの書き込みアクセスを許可しない場合public boolean exists()
true
、そうでない場合は false
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkRead(java.lang.String)
メソッドがファイルまたはディレクトリへの読み取りアクセスを許可しない場合public boolean isDirectory()
true
、そうでない場合は false
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkRead(java.lang.String)
メソッドがファイルへの読み取りアクセスを許可しない場合public boolean isFile()
true
、そうでない場合は false
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkRead(java.lang.String)
メソッドがファイルへの読み取りアクセスを許可しない場合public boolean isHidden()
'.'
) で始まる場合に隠しファイルとみなされます。Microsoft Windows システムの場合、ファイルシステムでファイルが隠しファイルとしてマークされている場合に隠しファイルとみなされます。
true
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkRead(java.lang.String)
メソッドがファイルへの読み取りアクセスを許可しない場合public long lastModified()
long
値。エポック (1970 年 1 月 1 日 0 時 0 分 0 秒、グリニッジ標準時) からミリ秒単位で測定。ファイルが存在しないか、入出力エラーが発生した場合は 0L
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkRead(java.lang.String)
メソッドがファイルへの読み取りアクセスを許可しない場合public long length()
0L
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkRead(java.lang.String)
メソッドがファイルへの読み取りアクセスを許可しない場合public boolean createNewFile() throws IOException
注: このメソッドをファイルロックのために使用しないでください。結果として得られるプロトコルを確実に動作させることができません。
true
、示されたファイルがすでに存在する場合は false
IOException
- 入出力エラーが発生した場合
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkWrite(java.lang.String)
メソッドがファイルへの書き込みアクセスを許可しない場合public boolean delete()
true
、そうでない場合は false
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkDelete(java.lang.String)
メソッドがファイルへの削除アクセスを許可しない場合public void deleteOnExit()
削除を要求したら、その要求を取り消すことはできません。そのため、このメソッドの使用には注意が必要です。
注: このメソッドをファイルロックのために使用しないでください。結果として得られるプロトコルを確実に動作させることができません。
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkDelete(java.lang.String)
メソッドがファイルへの削除アクセスを許可しない場合delete()
public String[] list()
この抽象パス名がディレクトリを示さない場合、このメソッドは null
を返します。ディレクトリを示す場合は、文字列の配列が返されます。文字列は、そのディレクトリ内のファイルまたはディレクトリごとに 1 つです。そのディレクトリ自体およびその親のディレクトリを示す名前は結果に含まれません。各文字列は、完全なパスではなくファイル名です。
結果の配列の名前文字列は特定の順序にはなりません。アルファベット順になるわけではありません。
null
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkRead(java.lang.String)
メソッドがディレクトリへの読み取りアクセスを許可しない場合public String[] list(FilenameFilter filter)
list()
メソッドの動作と同じです。ただし、返される配列の文字列はフィルタの条件を満たす必要があります。指定された filter
が null
の場合、すべての名前が受け入れられます。そうでない場合、名前がフィルタの基準を満たすのは、フィルタの FilenameFilter.accept(java.io.File, java.lang.String)
メソッドがこの抽象パス名およびそれが示すディレクトリ内のファイルまたはディレクトリの名前で呼び出されたときに true
が返される場合だけです。
filter
- ファイル名フィルタ
filter
によって受け入れられた、この抽象パス名が示しているディレクトリにあるファイルおよびディレクトリを示す文字列の配列。配列は、ディレクトリが空の場合またはフィルタがどの名前も受け入れない場合は空になる。この抽象パス名がディレクトリを示さない場合、または入出力エラーが発生した場合は null
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkRead(java.lang.String)
メソッドがディレクトリへの読み取りアクセスを許可しない場合public File[] listFiles()
この抽象パス名がディレクトリを示さない場合、このメソッドは null
を返します。ディレクトリを示す場合、File
オブジェクトの配列が返されます。File
オブジェクトは、そのディレクトリ内のファイルまたはディレクトリごとに 1 つです。そのディレクトリ自体およびその親ディレクトリを示すパス名は結果に含まれません。結果として得られる各抽象パス名は、
コンストラクタを使用することにより、この抽象パス名から生成されます。そのため、このパス名が絶対の場合、結果の各パス名は絶対です。このパス名が相対の場合、結果の各パス名は同じディレクトリに対して相対です。
File(File, String)
結果の配列の名前文字列は特定の順序にはなりません。アルファベット順になるわけではありません。
null
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkRead(java.lang.String)
メソッドがディレクトリへの読み取りアクセスを許可しない場合public File[] listFiles(FilenameFilter filter)
listFiles()
メソッドの動作と同じです。ただし、返される配列のパス名はフィルタの条件を満たす必要があります。指定された filter
が null
の場合、すべてのパス名が受け入れられます。そうでない場合、パス名がフィルタの基準を満たすのは、フィルタの FilenameFilter.accept(java.io.File, java.lang.String)
メソッドがこの抽象パス名およびそれが示すディレクトリ内のファイルまたはディレクトリの名前で呼び出されたときに true
が返される場合だけです。
filter
- ファイル名フィルタ
null
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkRead(java.lang.String)
メソッドがディレクトリへの読み取りアクセスを許可しない場合public File[] listFiles(FileFilter filter)
listFiles()
メソッドの動作と同じです。ただし、返される配列のパス名はフィルタの条件を満たす必要があります。指定された filter
が null
の場合、すべてのパス名が受け入れられます。そうでない場合、パス名がフィルタの基準を満たすのは、このフィルタの FileFilter.accept(java.io.File)
メソッドがパス名で呼び出されたときに true
の値が返される場合だけです。
filter
- ファイルフィルタ
null
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkRead(java.lang.String)
メソッドがディレクトリへの読み取りアクセスを許可しない場合public boolean mkdir()
true
、そうでない場合は false
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkWrite(java.lang.String)
メソッドが指定されたディレクトリの生成を許可しない場合public boolean mkdirs()
true
、そうでない場合は false
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkWrite(java.lang.String)
メソッドが指定されたディレクトリおよび必要なすべての親ディレクトリの生成を許可しない場合public boolean renameTo(File dest)
このメソッドがファイルシステム間でファイルを移動できるかどうかは、プラットフォームに依存します。名前の変更操作が成功したことを確認するために、常に戻り値を調べるようにしてください。
dest
- 指定されたファイルの新しい抽象パス名
true
、そうでない場合は false
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkWrite(java.lang.String)
メソッドが古いパス名と新しいパス名のいずれかへの書き込みアクセスを許可しない場合
NullPointerException
- パラメータ dest
が null
の場合public boolean setLastModified(long time)
すべてのプラットフォームは、秒単位に丸められたファイル変更時刻をサポートしますが、中にはもっと高い精度をサポートするものもあります。引数は、サポートされている精度に合わせて切り詰められます。操作が成功し、割り込む操作がファイル上で発生しない場合、
メソッドの次の呼び出しは、このメソッドに渡された lastModified()
time
引数 (切り詰められた場合がある) を返します。
time
- 最新に変更された時刻。エポック (1970 年 1 月 1 日 0 時 0 分 0 秒、グリニッジ標準時) からミリ秒単位で測定
true
、そうでない場合は false
IllegalArgumentException
- 引数が負の値の場合
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkWrite(java.lang.String)
メソッドが指定されたファイルへの書き込みアクセスを許可しない場合public boolean setReadOnly()
true
、そうでない場合は false
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkWrite(java.lang.String)
メソッドが指定されたファイルへの書き込みアクセスを許可しない場合public static File[] listRoots()
特定の Java プラットフォームは、ゼロまたは 1 つ以上の階層的に編成されたファイルシステムをサポートします。各ファイルシステムには、そのファイルシステムのほかのすべてのファイルに到達できる root
ディレクトリがあります。たとえば Windows プラットフォームには、アクティブなドライブごとにルートディレクトリがあります。UNIX プラットフォームのルートディレクトリは、"/"
の 1 つだけです。一連の有効なファイルシステムのルートは、リムーバブルメディアの挿入と取り出し、および物理ディスクドライブまたは仮想ディスクドライブの切断またはアンマウントなど、さまざまなシステムレベルの操作に影響を受けます。
このメソッドは、有効なファイルシステムのルートのルートディレクトリを示す File
オブジェクトの配列を返します。ローカルマシンに物理的に存在するファイルの正規のパス名は、必ずこのメソッドで返されるルートのいずれかから始まります。
ほかのマシンに存在し、リモートファイルシステムプロトコル (SMB や NFS など) を介してアクセスできるファイルの正規のパス名は、このメソッドで返されたルートのいずれかから始まっても、始まらなくてもかまいません。リモートファイルのパス名がローカルファイルのパス名と構文上区別できない場合、そのパス名はこのメソッドで返されるルートのいずれかから始まります。このため、たとえば Windows プラットフォームのマップされたネットワークドライブのルートディレクトリを示す File
オブジェクトはこのメソッドで返されますが、UNC パス名を含む File
オブジェクトはこのメソッドで返されません。
このクラスのほとんどのメソッドと違い、このメソッドはセキュリティー例外をスローしません。セキュリティーマネージャーが存在し、
メソッドが特定のルートディレクトリへの読み取りアクセスを拒否する場合、そのディレクトリは結果に現れません。
SecurityManager.checkRead(java.lang.String)
File
オブジェクトの配列。一連のルートが判別できない場合は null
。配列は、ファイルシステムのルートがない場合は空になるpublic static File createTempFile(String prefix, String suffix, File directory) throws IOException
指定されたディレクトリで新しい空のファイルを生成し、その名前には、指定された接頭辞および接尾辞の文字列が使用されます。このメソッドが正常に復帰する場合、次のことが保証されます。
deleteOnExit()
メソッドを使用します。
prefix
引数の長さは 3 文字以上必要です。接頭辞は "hjb"
または "mail"
などの短くて意味のある文字列にしてください。suffix
引数は null
でもかまいません。その場合は、接頭辞 ".tmp"
が使用されます。
新しいファイルを生成するために、まず接頭辞および接尾辞が基本となるプラットフォームの制限に合わせて調整されます。接頭辞が長すぎる場合は、切り詰められますが、最初の 3 文字は常に保持されます。接尾辞が長すぎる場合も切り詰められますが、それがピリオド ('.'
) で始まる場合は、ピリオドおよびそのあとの最初の 3 文字は常に保持されます。これらの調整が終わると、接頭辞、5 つ以上の内部で生成された文字、および接尾辞を連結して新しいファイル名が生成されます。
directory
引数が null
の場合、システムに依存するデフォルトの一時ファイルディレクトリが使用されます。デフォルトの一時ファイルディレクトリは、システムプロパティー java.io.tmpdir
で指定されます。UNIX システムの場合、このプロパティーのデフォルト値は通常 "/tmp"
または "/var/tmp"
です。Microsoft Windows システムの場合は、通常、"c:\\temp"
です。ただし、Java 仮想マシンを起動したときに、このシステムプロパティーに別の値が指定されることがあります。プログラムを使用してこのプロパティーを変更しても、このメソッドが使用する一時ディレクトリを変更できるとは限りません。
prefix
- ファイル名を生成するために使用される接頭辞文字列。3 文字以上の長さが必要であるsuffix
- ファイル名を生成するために使用される接尾辞文字列。null
も指定でき、その場合は、接尾辞 ".tmp"
が使用されるdirectory
- ファイルが生成されるディレクトリ。デフォルトの一時ファイルディレクトリが使用される場合は null
IllegalArgumentException
- prefix
引数が 3 文字に満たない場合
IOException
- ファイルが生成できなかった場合
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkWrite(java.lang.String)
メソッドがファイルの生成を許可しない場合public static File createTempFile(String prefix, String suffix) throws IOException
createTempFile(prefix, suffix, null)
を呼び出すことと同じです。
prefix
- ファイル名を生成するために使用される接頭辞文字列。3 文字以上の長さが必要であるsuffix
- ファイル名を生成するために使用される接尾辞文字列。null
も指定でき、その場合は、接尾辞 ".tmp"
が使用される
IllegalArgumentException
- prefix
引数が 3 文字に満たない場合
IOException
- ファイルが生成できなかった場合
SecurityException
- セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkWrite(java.lang.String)
メソッドがファイルの生成を許可しない場合public int compareTo(File pathname)
pathname
- この抽象パス名と比較される抽象パス名
public int compareTo(Object o)
compareTo(File)
の場合と同じように動作します。そうでない場合は、ClassCastException
がスローされます。抽象パス名は抽象パス名以外とは比較できないからです。
Comparable
内の compareTo
o
- この抽象パス名と比較される Object
ClassCastException
- 引数が抽象パス名ではない場合Comparable
public boolean equals(Object obj)
null
ではなく、この抽象パス名と同じファイルまたはディレクトリを示す抽象パス名である場合にだけ true
を返します。2 つの抽象パス名が等しいかどうかは基本となるシステムに依存します。UNIX システムの場合、パス名の比較でアルファベットの大文字と小文字が意味を持ちます。Microsoft Windows システムの場合は意味を持ちません。
Object
内の equals
obj
- この抽象パス名と比較されるオブジェクト
true
、そうでない場合は false
Object.hashCode()
,
Hashtable
public int hashCode()
1234321
の排他的論理和と等しくなります。Microsoft Windows システムの場合、ハッシュコードは、そのパス名文字列 (小文字に変換されたもの) のハッシュコードと 10 進数値 1234321
の排他的論理和と等しくなります。
Object
内の hashCode
Object.equals(java.lang.Object)
,
Hashtable
public String toString()
getPath()
メソッドによって返される文字列です。
Object
内の toString
|
CDC 1.1.2 | |||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |