javaディレクトリの複製(ソースコードからtomcat6)

 / **
     *ディレクトリにコピー。
     * /
    プライベートブールcopyDir(DirContextのSRCDIR、ファイルdestDirの){


        試み{


            NamingEnumerationに列挙= srcDir.list( "");
            一方、(enumeration.hasMoreElements()){
                NameClassPairにncPair =
                    (NameClassPairに)enumeration.nextElement();
                文字列名= ncPair.getName()。
                対象物体= srcDir.lookup(名);
                ファイルcurrentFileは、新しいFile(destDirの、名前を)=。
                (リソースのinstanceofオブジェクト){もし
                    入力ストリームである=((リソース)オブジェクト).streamContent();
                    OutputStreamのOS =新しいのFileOutputStream(currentFile)。
                    もし(コピー(OS)がされた!)
                        falseを返します。
                }他(入力ストリームのinstanceofオブジェクト){場合
                    のOutputStream OS =新しいたFileOutputStream(currentFile)。
                    (!コピー((入力ストリーム)オブジェクト、OS))であれば
                        、リターンはfalse;
                }そうであれば(DirContextのinstanceofのオブジェクト){
                    currentFile.mkdir()。
                    copyDir((DirContextの)オブジェクト、currentFile)。
                }
            }


        }キャッチ(NamingExceptionの電子){
            falseを返します。
        }キャッチ(IOExceptionを電子){
            falseを返します。
        }


        trueを返します。


    }




    / **
     *指定された一時ディレクトリにファイルをコピーします。これはのみ必要です
     ジャスパーがそれに依存するため、*。
     * /
    プライベートブールコピー(のInputStreamは、OutputStreamのOSである){


        試み{
            バイト[] BUF =新しいバイト[4096];
            一方、(TRUE){
                int型LEN = is.read(BUF)。
                (LEN <0)であれば
                    ブレーク。
                os.write(BUF、0、LEN)。
            }
            is.close()。
            os.close();
        }キャッチ(IOExceptionを電子){
            falseを返します。
        }


        trueを返します。


    }
公開された34元の記事 ウォンの賞賛2 ビュー40000 +

おすすめ

転載: blog.csdn.net/zjj2006/article/details/18213489