クラス FileTag

  • すべての実装されたインタフェース:
    java.io.Serializable, BodyTag, IterationTag, JspTag, Tag, TryCatchFinally

    public class FileTag
    extends CommonTagSupport
    各種アクションを指定して、ファイル関連の操作をおこなうタグです。 各種アクション に応じた振る舞いを行います。 結果については、false の場合は、body 要素を表示して、終了します。 これは、BODYにエラーメッセージを書いておくことを想定した作りになっています。 判定結果を反転したい場合は、notEquals 属性を使用してください。また、 結果に応じて、処理を止めたくない場合は、useStop 属性を false に指定することで、 後続処理を実行できます。 [各種アクション] canRead 読み込めるかどうかを判定。 canWrite 変更できるかどうか判定。 createNewFile 空の新しいファイルを不可分 (atomic) に生成。(そのファイルがまだ存在しない場合だけ) delete ファイルまたはディレクトリを削除(ディレクトリ階層をすべて削除)。 renameTo ファイルまたはディレクトリ名を変更。 exists ファイルが存在するかどうか判定。 isDirectory ファイルがディレクトリであるかどうか判定。 isFile ファイルが普通のファイルかどうか判定。 isHidden ファイルが隠しファイルかどうか判定。 mkdir ディレクトリを生成。 mkdirs ディレクトリを複数生成。 read ファイルを読み込んで、パラメータにセットします(6.2.3.0 (2015/05/01))。 existsLength ファイルサイズが0Byte以上のファイルが存在するかどうか判定。 copy ファイルまたはディレクトリをコピー(file1 ⇒ file2 にコピー)。 copyST ストリームファイルをコピー(file1(アドレス) ⇒ file2 にコピー)。 list ファイルリストをListオブジェクトにコピーして、パラメータにセットします(6.2.3.0 (2015/05/01))。 zip ファイルまたはディレクトリをZIPファイルに圧縮します。(file1⇒file2) timeStamp ファイルのタイムスタンプを現在時刻に変更します。(file1のみ)
    関連項目:
    直列化された形式
    機能分類
    その他部品
    形式サンプル:
    ●形式:<og:file action="…" fileURL="…" >・・・</og:file> ●body:あり(EVAL_BODY_INCLUDE:BODYをインクルードし、{@XXXX} は解析しません) ●Tag定義: <og:file action ○【TAG】アクション(canRead,canWrite,createNewFile,delete,exists,isDirectory,isFile,isHidden,mkdir,mkdirs,renameTo,read,existsLength,copy,copyST,list,zip,timeStamp)を指定します(必須)。 fileURL 【TAG】操作するファイルのディレクトリを指定します (初期値:FILE_URL[=filetemp/]) file1 【TAG】基準となるファイル名を指定します(コマンドの左辺のファイル名です) file2 【TAG】処理結果となるファイル名を指定します(コマンドの右辺のファイル名です) notEquals 【TAG】判定結果を反転させるかどうか[true/false]を指定します(初期値:false) useStop 【TAG】エラー時BODYを処理後に停止するかどうか[true/false]を指定します(初期値:true) encode 【TAG】ファイルを読み込む(action="read")際のエンコードを指定します(初期値:OS依存文字コード) caseKey 【TAG】このタグ自体を利用するかどうかの条件キーを指定します(初期値:null) 5.7.7.2 (2014/06/20) caseVal 【TAG】このタグ自体を利用するかどうかの条件値を指定します(初期値:null) 5.7.7.2 (2014/06/20) caseNN 【TAG】指定の値が、null/ゼロ文字列 でない場合(Not Null=NN)は、このタグは使用されます(初期値:判定しない) 5.7.7.2 (2014/06/20) caseNull 【TAG】指定の値が、null/ゼロ文字列 の場合は、このタグは使用されます(初期値:判定しない) 5.7.7.2 (2014/06/20) caseIf 【TAG】指定の値が、true/TRUE文字列の場合は、このタグは使用されます(初期値:判定しない) debug 【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false) > ... Body ... </og:file> ●使用例 ・ファイルの存在チェック→存在しなければエラーメッセージを表示。 <og:file action="exists" fileURL="N:/CIR/" file1="{@USER.LKISB}/{@USER.LDNO1KAI}.cir/001.sht"> <og:message lbl="RKE_0157" comment="回路図が存在しません。" /> </og:file> ・N:/Filetemp/にユーザーディレクトリが存在しなければ作成。→失敗した場合エラーメッセージを表示。 <og:file action="mkdir" fileURL="N:/Filetemp/{@USER.ID}" > <og:message comment="エラーが発生しました。システム管理者に連絡してください。" /> </og:file> ・N:/Filetemp/test.txt ファイルの削除。ファイルが存在しなくても処理を続ける。 <og:file action="delete" fileURL="N:/Filetemp/" file1="test.txt" useStop="false" > <og:message comment="ファイルは存在しませんでした。" /> </og:file>
    バージョン
    4.0
    作成者
    Kazuhiko Hasegawa
    導入されたバージョン:
    JDK5.0,
    • フィールドの詳細

      • ACT_CANREAD

        public static final java.lang.String ACT_CANREAD
        action 引数に渡す事の出来る アクションコマンド 読み込めるかどうか "canRead"
        関連項目:
        定数フィールド値
      • ACT_CANWRITE

        public static final java.lang.String ACT_CANWRITE
        action 引数に渡す事の出来る アクションコマンド 変更できるかどうか "canWrite"
        関連項目:
        定数フィールド値
      • ACT_CREATENEWFILE

        public static final java.lang.String ACT_CREATENEWFILE
        action 引数に渡す事の出来る アクションコマンド 空の新しいファイルを不可分 (atomic) に生成します (そのファイルがまだ存在しない場合だけ "createNewFile"
        関連項目:
        定数フィールド値
      • ACT_DELETE

        public static final java.lang.String ACT_DELETE
        action 引数に渡す事の出来る アクションコマンド ファイルまたはディレクトリを削除"delete"
        関連項目:
        定数フィールド値
      • ACT_EXISTS

        public static final java.lang.String ACT_EXISTS
        action 引数に渡す事の出来る アクションコマンド ファイルが存在するかどうか "exists"
        関連項目:
        定数フィールド値
      • ACT_ISDIRECTORY

        public static final java.lang.String ACT_ISDIRECTORY
        action 引数に渡す事の出来る アクションコマンド ファイルがディレクトリであるかどうか"isDirectory"
        関連項目:
        定数フィールド値
      • ACT_ISFILE

        public static final java.lang.String ACT_ISFILE
        action 引数に渡す事の出来る アクションコマンド ファイルが普通のファイルかどうか"isFile"
        関連項目:
        定数フィールド値
      • ACT_ISHIDDEN

        public static final java.lang.String ACT_ISHIDDEN
        action 引数に渡す事の出来る アクションコマンド ファイルが隠しファイルかどうか "isHidden"
        関連項目:
        定数フィールド値
      • ACT_MKDIR

        public static final java.lang.String ACT_MKDIR
        action 引数に渡す事の出来る アクションコマンド ディレクトリを生成します。 "mkdir"
        関連項目:
        定数フィールド値
      • ACT_MKDIRS

        public static final java.lang.String ACT_MKDIRS
        action 引数に渡す事の出来る アクションコマンド ディレクトリを生成します。 "mkdirs"
        関連項目:
        定数フィールド値
      • ACT_RENAMETO

        public static final java.lang.String ACT_RENAMETO
        action 引数に渡す事の出来る アクションコマンド ファイル名を変更します。 "renameTo"
        関連項目:
        定数フィールド値
      • ACT_READ

        public static final java.lang.String ACT_READ
        action 引数に渡す事の出来る アクションコマンド ファイルを読み込んで表示します。 "read"
        関連項目:
        定数フィールド値
      • ACT_EXISTSLENGTH

        public static final java.lang.String ACT_EXISTSLENGTH
        action 引数に渡す事の出来る アクションコマンド ファイルサイズが0Byte以上のファイルが存在するかどうか判定。 "existsLength"
        関連項目:
        定数フィールド値
      • ACT_COPY

        public static final java.lang.String ACT_COPY
        action 引数に渡す事の出来る アクションコマンド ファイルまたはディレクトリをコピーします。 "copy"
        関連項目:
        定数フィールド値
      • ACT_COPYST

        public static final java.lang.String ACT_COPYST
        action 引数に渡す事の出来る アクションコマンド ストリームファイルをコピーします。 "copyST"
        関連項目:
        定数フィールド値
      • ACT_LIST

        public static final java.lang.String ACT_LIST
        action 引数に渡す事の出来る アクションコマンド ディレクトリのファイルリストをListオブジェクトにコピーします。 "list"
        関連項目:
        定数フィールド値
      • ACT_ZIP

        public static final java.lang.String ACT_ZIP
        action 引数に渡す事の出来る アクションコマンド ZIP圧縮します。 "zip"
        関連項目:
        定数フィールド値
      • ACT_TIMESTAMP

        public static final java.lang.String ACT_TIMESTAMP
        action 引数に渡す事の出来る アクションコマンド タイムスタンプを現在時刻に変更します。 "timeStamp"
        関連項目:
        定数フィールド値
    • コンストラクタの詳細

      • FileTag

        public FileTag()
        デフォルトコンストラクター
        変更履歴:
        6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor.
    • メソッドの詳細

      • doStartTag

        public int doStartTag()
        Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
        定義:
        doStartTag インタフェース内 Tag
        オーバーライド:
        doStartTag クラス内 CommonTagSupport
        戻り値:
        後続処理の指示
        変更履歴:
        3.6.0.0 (2004/09/25) file オブジェクトの作成を actionExec 移動, 3.8.5.2 (2006/05/31) notEquals追加。 判定結果を反転させて処理します。, 5.7.7.2 (2014/06/20) caseKey,caseVal,caseNN,caseNull 属性を追加
      • doEndTag

        public int doEndTag()
        Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
        定義:
        doEndTag インタフェース内 Tag
        オーバーライド:
        doEndTag クラス内 CommonTagSupport
        戻り値:
        後続処理の指示
        変更履歴:
        3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。, 3.8.5.2 (2006/05/31) useStop 追加。 エラー時BODYを処理後に停止(true)するかどうか, 5.7.7.2 (2014/06/20) caseKey,caseVal,caseNN,caseNull 属性を追加
      • release2

        protected void release2()
        タグリブオブジェクトをリリースします。 キャッシュされて再利用されるので、フィールドの初期設定を行います。
        オーバーライド:
        release2 クラス内 CommonTagSupport
        変更履歴:
        2.0.0.4 (2002/09/27) カスタムタグの release() メソッドを、追加, 3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。, 3.6.0.0 (2004/09/24) columns 、tableId 、file 削除, 3.8.5.2 (2006/05/31) notEquals 、useStop 追加, 5.1.9.0 (2010/08/01) READ時のエンコード指定
      • setAction

        public void setAction​(java.lang.String cmd)
        【TAG】アクション(canRead,canWrite,createNewFile,delete,exists,isDirectory,isFile,isHidden,mkdir,mkdirs,renameTo,read,existsLength,copy,copyST,list)を指定します。
        パラメータ:
        cmd - アクション文字列
        関連項目:
        アクション定数
        説明:
        アクションは,HTMLから(get/post)指定されますので,ACT_xxx で設定される フィールド定数値のいづれかを、指定できます。 処理の結果が、false の場合は、body 要素を表示して終了します。 useStop 属性と、notEquals 属性によって、上記の振る舞いをけることが可能です。 canRead 読み込めるかどうかを判定 canWrite 変更できるかどうか判定 createNewFile 空の新しいファイルを不可分 (atomic) に生成。(そのファイルがまだ存在しない場合だけ) delete ファイルまたはディレクトリを削除(ディレクトリ階層をすべて削除) exists ファイルが存在するかどうか判定 isDirectory ファイルがディレクトリであるかどうか判定 isFile ファイルが普通のファイルかどうか判定 isHidden ファイルが隠しファイルかどうか判定 mkdir ディレクトリを生成 mkdirs ディレクトリを複数生成 renameTo ファイルまたはディレクトリ名を変更 read ファイルを読み込んで、パラメータにセットします(6.2.3.0 (2015/05/01)) existsLength ファイルサイズが0Byte以上のファイルが存在するかどうか判定 copy ファイルまたはディレクトリをコピー(file1 ⇒ file2 にコピー) copyST ストリームファイルをコピー(file1(アドレス) ⇒ file2 にコピー) ※1。 list ファイルリストをListオブジェクトにコピーして、パラメータにセットします(6.2.3.0 (2015/05/01)) ※1 copyST の file1 は、getResourceAsStream を使用の為、/gf/jsp/・・・ ではなく、/jsp/・・・ でのアドレス指定で取得します。
        変更履歴:
        3.0.0.0 (2002/12/25) ACTION_LIST のチェックを導入, 3.5.6.2 (2004/07/05) 文字列の連結にStringBuilderを使用します。, 6.3.4.0 (2015/08/01) エラーメッセージを、変更。, 6.3.6.1 (2015/08/28) copyST アクション追加, 6.4.3.4 (2016/03/11) String配列 から、Setに置き換えます。
      • setFileURL

        public void setFileURL​(java.lang.String url)
        【TAG】操作するファイルのディレクトリを指定します (初期値:FILE_URL[=])。
        パラメータ:
        url - ファイルURL
        関連項目:
        SystemData.FILE_URL
        説明:
        この属性で指定されるディレクトリのファイルを操作します。 指定方法は、通常の fileURL 属性と同様に、先頭が、'/' (UNIX) または、2文字目が、 ":" (Windows)の場合は、指定のURLそのままのディレクトリに、そうでない場合は、 (初期値:システム定数のFILE_URL[=])。
        変更履歴:
        4.0.0.0 (2005/01/31) urlAppend メソッドの利用, 4.0.0.0 (2007/11/20) 指定されたディレクトリ名の最後が"\"or"/"で終わっていない場合に、"/"を付加する。, 6.4.2.1 (2016/02/05) URLの最後に、"/" を追加する処理を廃止。
      • setFile1

        public void setFile1​(java.lang.String fname)
        【TAG】基準となるファイル名を指定します(コマンドの左辺のファイル名です)。
        パラメータ:
        fname - ファイル名1
        説明:
        コマンドの左辺のファイル名です。 ※ 6.3.6.1 (2015/08/28) copyST アクション時に、copy元に、アドレス指定できるようにする。
      • setFile2

        public void setFile2​(java.lang.String fname)
        【TAG】処理結果となるファイル名を指定します(コマンドの右辺のファイル名です)。
        パラメータ:
        fname - ファイル名2
        説明:
        コマンドの右辺のファイル名です。 ただし、action="list" の時は、file2 を、フィルターとして使用します。
      • setNotEquals

        public void setNotEquals​(java.lang.String flag)
        【TAG】判定結果を反転させるかどうか[true/false]を指定します(初期値:false)。
        パラメータ:
        flag - 判定結果反転 [true:反転する/それ以外:通常]
        説明:
        通常の判定結果において、不成立(false)の場合に、BODY を実行します。 通常の処理結果の正反対の処理を行います。 初期値は、通常 (true 以外)です。
        変更履歴:
        3.8.5.2 (2006/05/31) 新規追加
      • setUseStop

        public void setUseStop​(java.lang.String flag)
        【TAG】エラー時BODYを処理後に停止するかどうか[true/false]を指定します(初期値:true)。
        パラメータ:
        flag - 処理後停止 [true:する/それ以外:しない]
        説明:
        処理結果などに応じて、以下の処理を停止したい場合に、使用します。 通常は、条件を判定後、false の場合に、BODY部を出力(処理)した後に、 処理を停止します。(useStop="true") false を指定すると、判定結果に無関係に、以下の処理を実行します。 処理は継続したいが、警告表示する場合に、useStop="false" を指定します。 初期値は、停止する ("true")です。
        変更履歴:
        3.8.5.2 (2006/05/31) 新規追加
      • setEncode

        public void setEncode​(java.lang.String enc)
        【TAG】ファイルを読み込む(action="read")際のエンコードを指定します(初期値:OS依存文字コード)。
        パラメータ:
        enc - ファイル読み込みのエンコード
        説明:
        ファイルを読み込む(action="read")際のエンコードを指定します。 action="read"以外場合には、この属性値は利用されません。 指定しない場合は、OS依存文字コードで読み込まれます。
        変更履歴:
        5.1.9.0 (2010/08/01) 新規作成
      • toString

        public java.lang.String toString()
        このオブジェクトの文字列表現を返します。 基本的にデバッグ目的に使用します。
        オーバーライド:
        toString クラス内 CommonTagSupport
        戻り値:
        このクラスの文字列表現
        このメソッドは、nullを返しません