概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
openGion 5.7.5.0
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

## org.opengion.fukurou.util
クラス FileUtil

    java.lang.Object
      org.opengion.fukurou.util.FileUtil

    public final class FileUtil

extends java.lang.Object

FileUtil.java は、共通的に使用される File関連メソッドを集約した、クラスです。 全変数は、public static final 宣言されており、全メソッドは、public static synchronized 宣言されています。

機能分類
  ユーティリティ
バージョン
  4.0
作成者
  Kazuhiko Hasegawa
導入されたバージョン:
  JDK5.0,

フィールドの概要
`static char` | `EXTENSION_SEPARATOR` 5.6.1.2 (2013/02/22) ファイルの拡張子の区切りを表す文字

メソッドの概要
`static boolean` | `changeCrLfcopy(java.io.File fromFile, java.io.File toFile)` ファイルのバイナリコピーを行います。
`static java.io.File` | `checkFile(java.lang.String dir, java.lang.String filename)` 指定のファイル名が、実際に存在しているかどうかをチェックします。
`static java.io.File` | `checkFile(java.lang.String dir, java.lang.String filename, int count)` 指定のファイル名が、実際に存在しているかどうかをチェックします。
`static boolean` | `copy(java.io.File fromFile, java.io.File toFile)` ファイルのバイナリコピーを行います。
`static boolean` | `copy(java.io.File fromFile, java.io.File toFile, boolean keepTimeStamp)` ファイルのバイナリコピーを行います。
`static boolean` | `copy(java.io.InputStream input, java.io.OutputStream output)` 入出力ストリーム間でデータの転送を行います。
`static boolean` | `copy(java.lang.String fromFile, java.lang.String toFile)` ファイルのバイナリコピーを行います。
`static boolean` | `copy(java.lang.String fromFile, java.lang.String toFile, boolean keepTimeStamp)` ファイルのバイナリコピーを行います。
`static boolean` | `copyDirectry(java.io.File fromDir, java.io.File toDir)` 再帰処理でディレクトリをコピーします。
`static boolean` | `copyDirectry(java.io.File fromDir, java.io.File toDir, boolean keepTimeStamp)` 再帰処理でディレクトリをコピーします。
`static boolean` | `copyDirectry(java.lang.String fromDir, java.lang.String toDir)` 再帰処理でディレクトリのコピーを行います。
`static boolean` | `deleteFiles(java.io.File file)` 指定されたファイル及びディレクトを削除します。
`static java.lang.String` | `getBaseName(java.lang.String filename)` 指定されたファイル名(パスを含む)から、パスも拡張子もないファイル名を返します。
`static java.io.BufferedReader` | `getBufferedReader(java.io.File file, java.lang.String encode)` Fileオブジェクトとエンコードより BufferedReaderオブジェクトを作成します。
`static java.lang.String` | `getExtension(java.lang.String fileName)` ファイル名から 拡張子を取得します。
`static void` | `getFileList(java.io.File dir, boolean sort, java.util.List<java.lang.String> list)` 指定されたディレクトリを基点としたファイル名(パスを含む)の一覧を返します。
`static void` | `getFileList(java.io.File dir, boolean sort, java.util.List<java.lang.String> list, boolean isCopy)` 指定されたディレクトリを基点としたファイル名(パスを含む)の一覧を返します。
`static java.io.PrintWriter` | `getLogWriter(java.lang.String file)` ファイル名より、PrintWriterオブジェクトを作成する簡易メソッドです。
`static java.io.PrintWriter` | `getNonFlushPrintWriter(java.io.Writer writer)` PrintWriter を継承した、JspWriterなどの Writer 用のクラスを定義します。
`static java.io.PrintWriter` | `getPrintWriter(java.io.File file, java.lang.String encode)` Fileオブジェクトとエンコードより PrintWriterオブジェクトを作成します。
`static java.io.PrintWriter` | `getPrintWriter(java.io.File file, java.lang.String encode, boolean append)` Fileオブジェクトとエンコードより PrintWriterオブジェクトを作成します。
`static java.io.PrintWriter` | `getPrintWriter(java.io.OutputStream os, java.lang.String encode)` OutputStreamとエンコードより PrintWriterオブジェクトを作成します。
`static void` | `main(java.lang.String[] args)` ファイルをコピーします。
`static boolean` | `renameTo(java.io.File fromFile, java.io.File toFile, boolean useBackup)` ファイルをリネームを行います。

クラス java.lang.Object から継承されたメソッド
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

フィールドの詳細

### EXTENSION_SEPARATOR

    public static final char EXTENSION_SEPARATOR

  5.6.1.2 (2013/02/22) ファイルの拡張子の区切りを表す文字

  関連項目:
    定数フィールド値

メソッドの詳細

### getPrintWriter

    public static java.io.PrintWriter getPrintWriter(java.io.File file,
                                                     java.lang.String encode)

  Fileオブジェクトとエンコードより PrintWriterオブジェクトを作成します。

  パラメータ:
    `file` - 出力するファイルオブジェクト
    `encode` - ファイルのエンコード
  戻り値:
    PrintWriterオブジェクト
  例外:
    `java.lang.RuntimeException` - 何らかのエラーが発生した場合

### getPrintWriter

    public static java.io.PrintWriter getPrintWriter(java.io.File file,
                                                     java.lang.String encode,
                                                     boolean append)

  Fileオブジェクトとエンコードより PrintWriterオブジェクトを作成します。

  パラメータ:
    `file` - 出力するファイルオブジェクト
    `encode` - ファイルのエンコード
    `append` - ファイルを追加モード(true)にするかどうか
  戻り値:
    PrintWriterオブジェクト
  例外:
    `java.lang.RuntimeException` - 何らかのエラーが発生した場合

### getLogWriter

    public static java.io.PrintWriter getLogWriter(java.lang.String file)

  ファイル名より、PrintWriterオブジェクトを作成する簡易メソッドです。 これは、ファイル名は、フルパスで、追加モードで、UTF-8 エンコードの ログファイルを出力する場合に使用します。 また、ファイル名に、"System.out" と、"System.err" を指定できます。 その場合は、標準出力、または、標準エラー出力に出力されます。 "System.out" と、"System.err" を指定した場合は、NonClosePrintWriter オブジェクトが返されます。これは、close() 処理が呼ばれても、何もしない クラスです。また、常に内部キャッシュの同じオブジェクトが返されます。

  パラメータ:
    `file` - 出力するファイル名
  戻り値:
    PrintWriterオブジェクト
  例外:
    `java.lang.RuntimeException` - 何らかのエラーが発生した場合
    `java.lang.IllegalArgumentException` - ファイル名が null の場合

### getPrintWriter

    public static java.io.PrintWriter getPrintWriter(java.io.OutputStream os,
                                                     java.lang.String encode)

  OutputStreamとエンコードより PrintWriterオブジェクトを作成します。

  パラメータ:
    `os` - 利用するOutputStream
    `encode` - ファイルのエンコード
  戻り値:
    PrintWriterオブジェクト
  例外:
    `java.lang.RuntimeException` - 何らかのエラーが発生した場合
  変更履歴:

    5.5.2.0 (2012/05/01) 新規追加

### getNonFlushPrintWriter

    public static java.io.PrintWriter getNonFlushPrintWriter(java.io.Writer writer)

  PrintWriter を継承した、JspWriterなどの Writer 用のクラスを定義します。 例えば、JspWriterなどの JSP/Servlet等のフレームワークで使用される Writer では、flush や close 処理は、フレームワーク内で行われます。 その場合、通常のファイルと同じ用に、flush や close をアプリケーション側で 行うと、内部処理的に不整合が発生したり、最悪の場合エラーになります。 このクラスは、NonFlushPrintWriter クラスのオブジェクトを返します。 これは、通常の、new PrintWriter( Writer ) で、求めるのと、ほとんど同様の 処理を行いますが、close() と flush() メソッドが呼ばれても、何もしません。

  パラメータ:
    `writer` - 出力するWriteオブジェクト(NonFlushPrintWriterクラス)
  戻り値:
    PrintWriterオブジェクト

### getBufferedReader

    public static java.io.BufferedReader getBufferedReader(java.io.File file,
                                                           java.lang.String encode)

  Fileオブジェクトとエンコードより BufferedReaderオブジェクトを作成します。

  パラメータ:
    `file` - 入力するファイルオブジェクト
    `encode` - ファイルのエンコード
  戻り値:
    BufferedReaderオブジェクト
  例外:
    `java.lang.RuntimeException` - 何らかのエラーが発生した場合

### checkFile

    public static java.io.File checkFile(java.lang.String dir,
                                         java.lang.String filename)

  指定のファイル名が、実際に存在しているかどうかをチェックします。 存在しない場合は、２秒毎に、３回確認します。 それでも存在しない場合は、エラーを返します。 return されるFileオブジェクトは、正規の形式(CanonicalFile)です。

  パラメータ:
    `dir` - フォルダ名
    `filename` - ファイル名
  戻り値:
    存在チェック(なければ null/あれば、CanonicalFile)

### checkFile

    public static java.io.File checkFile(java.lang.String dir,
                                         java.lang.String filename,
                                         int count)

  指定のファイル名が、実際に存在しているかどうかをチェックします。 存在しない場合は、２秒毎に、指定の回数分確認します。 それでも存在しない場合は、エラーを返します。 return されるFileオブジェクトは、正規の形式(CanonicalFile)です。

  パラメータ:
    `dir` - フォルダ名
    `filename` - ファイル名
    `count` - 回数指定
  戻り値:
    存在チェック(なければ null/あれば、CanonicalFile)

### copy

    public static boolean copy(java.lang.String fromFile,
                               java.lang.String toFile)

  ファイルのバイナリコピーを行います。 copy( File,File,false ) を呼び出します。

  パラメータ:
    `fromFile` - コピー元ファイル名
    `toFile` - コピー先ファイル名
  戻り値:
    バイナリコピーが正常に終了したかどうか[true:成功/false:失敗]
  関連項目:
    `copy( File,File,boolean )`
  変更履歴:

    5.1.6.0 (2010/05/01) 戻り値に、true/false 指定します。

### copy

    public static boolean copy(java.lang.String fromFile,
                               java.lang.String toFile,
                               boolean keepTimeStamp)

  ファイルのバイナリコピーを行います。 copy( File,File,boolean ) を呼び出します。 第３引数の、keepTimeStamp=true で、コピー元のファイルのタイムスタンプを、 コピー先にもセットします。

  パラメータ:
    `fromFile` - コピー元ファイル名
    `toFile` - コピー先ファイル名
    `keepTimeStamp` - タイムスタンプ維持[true/false]
  戻り値:
    バイナリコピーが正常に終了したかどうか[true:成功/false:失敗]
  関連項目:
    `copy( File,File,boolean )`
  変更履歴:

    5.1.6.0 (2010/05/01) 戻り値に、true/false 指定します。

### copy

    public static boolean copy(java.io.File fromFile,
                               java.io.File toFile)

  ファイルのバイナリコピーを行います。 copy( File,File,false ) を呼び出します。

  パラメータ:
    `fromFile` - コピー元ファイル
    `toFile` - コピー先ファイル
  戻り値:
    バイナリコピーが正常に終了したかどうか[true:成功/false:失敗]
  関連項目:
    `copy( File,File,boolean )`
  変更履歴:

    5.1.6.0 (2010/05/01) 戻り値に、true/false 指定します。

### copy

    public static boolean copy(java.io.File fromFile,
                               java.io.File toFile,
                               boolean keepTimeStamp)

  ファイルのバイナリコピーを行います。 第３引数の、keepTimeStamp=true で、コピー元のファイルのタイムスタンプを、 コピー先にもセットします。 toFile が、ディレクトリの場合は、fromFile のファイル名をそのままコピーします。 fromFile がディレクトリの場合は、エラーにします。 copyDirectry( File,Fileboolean )を使用してください。(自動処理はしていません)

  パラメータ:
    `fromFile` - コピー元ファイル
    `toFile` - コピー先ファイル
    `keepTimeStamp` - タイムスタンプ維持[true/false]
  戻り値:
    バイナリコピーが正常に終了したかどうか[true:成功/false:失敗]
  関連項目:
    `copyDirectry( File,File,boolean )`
  変更履歴:

    5.1.6.0 (2010/05/01) 新規追加
    5.6.5.2 (2013/06/21) ByteBufferを利用した方式から、transferTo を使用する方式に変更
    5.7.1.2 (2013/12/20) copy先(toFile)のフォルダが存在しなければ、作成します。

### changeCrLfcopy

    public static boolean changeCrLfcopy(java.io.File fromFile,
                                         java.io.File toFile)

  ファイルのバイナリコピーを行います。 このファイルコピーは、バイナリファイルの 改行コードを CR+LF に統一します。また、UTF-8 の BOM(0xef,0xbb,0xbf) があれば、 取り除きます。

  パラメータ:
    `fromFile` - コピー元ファイル
    `toFile` - コピー先ファイル
  戻り値:
    バイナリコピーが正常に終了したかどうか[true:成功/false:失敗]
  変更履歴:

    5.1.6.0 (2010/05/01) 新規追加

### copy

    public static boolean copy(java.io.InputStream input,
                               java.io.OutputStream output)

  入出力ストリーム間でデータの転送を行います。 ここでは、すでに作成されたストリームに基づき、データの入出力を行います。 よって、先にフォルダ作成や、存在チェック、ファイルの削除などの必要な処理は 済まして置いてください。 また、このメソッド内で、ストリームのクロース処理は行っていません。

  パラメータ:
    `input` - 入力ストリーム
    `output` - 出力ストリーム
  戻り値:
    データ転送が正常に終了したかどうか[true:成功/false:失敗]
  変更履歴:

    5.1.6.0 (2010/05/01) 新規追加

### copyDirectry

    public static boolean copyDirectry(java.lang.String fromDir,
                                       java.lang.String toDir)

  再帰処理でディレクトリのコピーを行います。 指定されたコピー元ディレクトリがディレクトリでなかったり存在しないときは falseを返します。

  パラメータ:
    `fromDir` - コピー元ディレクトリ名
    `toDir` - コピー先ディレクトリ名
  戻り値:
    ディレクトリのコピーが正常に終了したかどうか[true:成功/false:失敗]
  変更履歴:

    4.3.0.0 (2008/07/24) 追加
    5.1.6.0 (2010/05/01) 戻り値に、true/false 指定します。

### copyDirectry

    public static boolean copyDirectry(java.io.File fromDir,
                                       java.io.File toDir)

  再帰処理でディレクトリをコピーします。 指定されたコピー元ディレクトリがディレクトリでなかったり存在しないときは falseを返します。

  パラメータ:
    `fromDir` - コピー元ディレクトリ
    `toDir` - コピー先ディレクトリ
  戻り値:
    ディレクトリのコピーが正常に終了したかどうか[true:成功/false:失敗]
  変更履歴:

    4.3.0.0 (2008/07/24) 追加
    5.1.6.0 (2010/05/01) 内部処理を若干変更します。

### copyDirectry

    public static boolean copyDirectry(java.io.File fromDir,
                                       java.io.File toDir,
                                       boolean keepTimeStamp)

  再帰処理でディレクトリをコピーします。 指定されたコピー元ディレクトリがディレクトリでなかったり存在しないときは falseを返します。

  パラメータ:
    `fromDir` - コピー元ディレクトリ
    `toDir` - コピー先ディレクトリ
    `keepTimeStamp` - タイムスタンプ維持[true/false]
  戻り値:
    ディレクトリのコピーが正常に終了したかどうか[true:成功/false:失敗]
  変更履歴:

    4.3.0.0 (2008/07/24) 追加
    5.1.6.0 (2010/05/01) 内部処理を若干変更します。
    5.3.7.0 (2011/07/01) フォルダにアクセスできない場合は、エラーを返します。

### deleteFiles

    public static boolean deleteFiles(java.io.File file)

  指定されたファイル及びディレクトを削除します。 ディレクトリの場合はサブフォルダ及びファイルも削除します。 １つでもファイルの削除に失敗した場合、その時点で処理を中断しfalseを返します。

  パラメータ:
    `file` - 削除ファイル/ディレクトリ
  戻り値:
    ファイル/ディレクトリの削除に終了したかどうか[true:成功/false:失敗]
  変更履歴:

    5.3.7.0 (2011/07/01) フォルダにアクセスできない場合は、エラーを返します。

### getFileList

    public static void getFileList(java.io.File dir,
                                   boolean sort,
                                   java.util.List<java.lang.String> list,
                                   boolean isCopy)

  指定されたディレクトリを基点としたファイル名(パスを含む)の一覧を返します。

  パラメータ:
    `dir` - 基点となるディレクトリ
    `sort` - ファイル名でソートするか
    `list` - ファイル名一覧を格納するList
    `isCopy` - コピー中ファイルを除外するか [true:含む/false:除外]
  変更履歴:

    4.3.6.6 (2009/05/15) 新規作成
    5.4.3.2 (2012/01/06) 引数isCopy追加

### getFileList

    public static void getFileList(java.io.File dir,
                                   boolean sort,
                                   java.util.List<java.lang.String> list)

  指定されたディレクトリを基点としたファイル名(パスを含む)の一覧を返します。 互換性のため、コピー中ファイルも含みます。

  パラメータ:
    `dir` - 基点となるディレクトリ
    `sort` - ファイル名でソートするか
    `list` - ファイル名一覧を格納するList
  変更履歴:

    5.4.3.2 (2012/01/06) コピー中対応のため引数４つを作成する

### getBaseName

    public static java.lang.String getBaseName(java.lang.String filename)

  指定されたファイル名(パスを含む)から、パスも拡張子もないファイル名を返します。

  パラメータ:
    `filename` - ファイル名(パスを含む)
  戻り値:
    パスも、拡張子もないファイル名
  変更履歴:

    5.6.1.2 (2013/02/22) 新規作成

### renameTo

    public static boolean renameTo(java.io.File fromFile,
                                   java.io.File toFile,
                                   boolean useBackup)

  ファイルをリネームを行います。 引数のuseBackup属性を true にすると、toFile が存在した場合、toFile の直下に "_backup" フォルダを 作成して、toFile ＋ "_" ＋ (現在時刻のLONG値) ＋ "." ＋ (toFileの拡張子) に名前変更します。 useBackup属性を false にすると、toFile が存在した場合、toFile を削除します。

  パラメータ:
    `fromFile` - 名前変更する元のファイル
    `toFile` - 名前変更後のファイル
    `useBackup` - バックアップを作成するかどうか(true:作成する/false:作成しない)
  戻り値:
    true:正常処理/false:異常処理
  変更履歴:

    5.7.1.2 (2013/12/20) 新規追加

### getExtension

    public static java.lang.String getExtension(java.lang.String fileName)

  ファイル名から 拡張子を取得します。 一番最後に見つかったピリオドから後ろを切り取って返します。 拡張子の区切り文字(".")がなければ、空文字列を返します。

  パラメータ:
    `fileName` - ファイル名
  戻り値:
    拡張子
  変更履歴:

    5.7.1.2 (2013/12/20) UploadedFileからに移動。若干のロジック変更

### main

    public static void main(java.lang.String[] args)
                     throws java.lang.Throwable

  ファイルをコピーします。 引数に <file1> <file2> [<encode1> <encode2>] を指定します。 file1 を読み込み、file2 にコピーします。コピー前に、file2 は、file2_backup にコピーします。 file1 が、ディレクトリの場合は、ディレクトリごとコピーします。 encode1、encode2 を指定すると、エンコード変換しながらコピーになります。 この場合は、ファイル同士のコピーのみになります。

  パラメータ:
    `args` - 引数配列 file1 file2 [encode1 encode2]
  例外:
    `java.lang.Throwable` - なんらかのエラーが発生した場合。
  変更履歴:

    4.0.0.0 (2007/11/28) メソッドの戻り値をチェックします。
    5.1.6.0 (2010/05/01) 引数の並び順、処理を変更します。

概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
| openGion 5.7.5.0
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.