复制代码代码如下:
パッケージcom.famous.dark.util;
java.io.fileをインポートします。
java.io.filefilterをインポートします。
パブリッククラスmyfilefilterはfilefilterを実装します{
public boolean accept(file file){
string filename = file.getName()。tolowercase();
if(filename.endswith( "。jar")|| file.isdirectory()){
trueを返します。
}
falseを返します。
}
}
复制代码代码如下:
パッケージcom.famous.dark.util;
java.io.fileをインポートします。
java.io.ioexceptionをインポートします。
org.apache.commons.io.fileutilsをインポートします。
org.apache.commons.io.filenameutilsをインポートします。
/**
*
* @authorpat将文件中的jar文件提取出来
*/
パブリッククラスのjarcollectionutil {
public string collectionjar(ファイルBasefile、string targetfilepath)は例外をスローします{
file targetDir = new File(TargetFilePath);
if(!targetdir.exists()){
TargetDir.mkdir();
}
if(basefile.exists()&& basefile.isdirectory()){
file [] files = basefile.listfiles(new myfilefilter());
for(ファイル:ファイル){
if(file.isdirectory()){
collectionjar(file、targetfilepath);
} それ以外 {
ファイルターゲットファイル= new file(targetfilepath + "//" + file.getName());
fileutils.copyfile(file、targetfile);
}
}
「成功」を返します。
} それ以外 {
「文件路径不存在」を返します。
}
}
public static void main(string [] args)スロー例外{
jarcollectionutil collectilutil = new JarCollectionUtil();
Collectionutil.collectionjar(new file( "f://jar//lucene-4.3.1")、 "f:// jar // lucene");
}
}