import java.io.File;
import java.io.FileFilter;
import java.io.FilenameFilter;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
/**
扫描你电脑上所有图片文件,将其存入D:\all.data文件中
格式如:
c:/aaa/bbb/xxx.jpg
d:/ddd/ddd/jjjj.jpg
*
*
*
* 扫描所有图片
*/
public class Test1 {
public static List<File> all = new ArrayList<File>();
public static boolean RUN = true;
public static void main(String[] args) throws Exception
{
File [] roots = File.listRoots();
for(File root:roots){
ScanDir(root);
}
}
public static void ScanDir(File dir)
{
if(!RUN){
try {
PrintWriter pw = new PrintWriter("d://all.data");
for(File f:all){
pw.println(f);
}
}catch (Exception e){
e.printStackTrace();
}
System.out.println("OK_____");//完成标志
System.exit(0);
}
if(null!=dir&&dir.isDirectory()){
//先找当前目录下的照片文件
findJpg(dir);
//找当前目录下的子目录
File []subdir = dir.listFiles(new FileFilter() {
public boolean accept(File pathname) {
if(null!=pathname&&pathname.isDirectory()&&pathname.canExecute()){
return true;
}
else return false;
}
});
if(null!=subdir&&subdir.length>0){
for(File tt:subdir){
ScanDir(tt);
}
}
}
}
private static void findJpg(File dir) {
if(null!=dir&&dir.canRead()&&dir.canWrite()&&dir.canExecute()){
File [] allpic = dir.listFiles(new FilenameFilter() {
@Override
public boolean accept(File dir, String name) {
return null!=name&&name.toLowerCase().endsWith(".jpg")?true:false;
}
});
if(null!=allpic&&allpic.length>0){
for(File f:allpic){
System.out.println("------>"+f);
if(all.size()>100) RUN=false;//打印的数量
if(RUN) all.add(f);
}
}
}
}
}
扫描电脑上所有图片,并存于指定文件中
最新推荐文章于 2025-05-12 16:03:40 发布