Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.File;
- import wan.dev.sample.countfile.CountFileExtension1.GenericExtFilter;
- public class CountFile1 {
- private static final String FILE_DIR = "D:\\";
- private static final String FILE_TEXT_EXT = ".txt";
- private static final String FILE_PPT_EXT = ".pptx";
- private static final String FILE_JPG_EXT = ".jpg";
- private static final String FILE_FLV_EXT = ".flv";
- private static final String FILE_MP3_EXT = ".mp3";
- private static final String FILE_DOCX_EXT = ".docx";
- private static final String FILE_SPREADSHEET_EXT = ".xlsx";
- private static final String FILE_SYSTEM_EXT = ".dll";
- private static final String FILE_OTHER_EXT = ".";
- public static void main(String[] args) throws InterruptedException{
- // scan and count file
- int totalCountTxt = 0;
- int totalCountPptx = 0;
- int totalCountFlv = 0;
- int totalCountMp3 = 0;
- int totalCountDocx = 0;
- int totalImageCount = 0;
- int totalCountSystem = 0;
- int totalOtherCount = 0;
- File file = new File(FILE_DIR);
- calculateFile countTxt = new calculateFile( file, "Text", FILE_TEXT_EXT, ".dll", ".exe" );
- calculateFile countPptx = new calculateFile( file, "Power Point", FILE_PPT_EXT );
- calculateFile countJpg = new calculateFile( file, "Image", FILE_JPG_EXT );
- calculateFile countFlv = new calculateFile( file, "Video", FILE_FLV_EXT );
- calculateFile countMp3 = new calculateFile( file, "Music", FILE_MP3_EXT );
- calculateFile countDocx = new calculateFile( file, "Document", FILE_DOCX_EXT );
- calculateFile countSystem = new calculateFile( file, "System", FILE_SYSTEM_EXT );
- countTxt.run();
- countPptx.run();
- countJpg.run();
- countFlv.run();
- countMp3.run();
- countDocx.run();
- countSystem.run();
- // totalCountTxt = countTxt.getCount();
- // totalCountPptx = countPptx.getCount();
- // totalImageCount = countJpg.getCount();
- // totalCountFlv = countFlv.getCount();
- // totalCountMp3 = countMp3.getCount();
- // totalCountDocx = countDocx.getCount();
- // totalCountSystem = countSystem.getCount();
- //
- }
- }
- //other clas
- class calculateFile implements Runnable {
- int count = 0;
- File file = null;
- String[] exts = null;
- String title = null;
- public calculateFile(File file, String title, String... exts) throws InterruptedException {
- this.exts = exts;
- this.file = file;
- this.title = title;
- }
- public int countFiles(File directory, String... exts) {
- this.exts = exts;
- CountFileExtension1 mainclass = new CountFileExtension1();
- int count = 0;
- for(File file : directory.listFiles()) {
- if(file.isDirectory()) {
- count += countFiles(file, exts);
- }
- String textFile = file.toString();
- for (String ext : exts) {
- if (textFile.endsWith(ext)) {
- count++;
- }
- }
- }
- return count;
- }
- public int getCount(){
- int count = this.count;
- return count;
- }
- public void run() {
- count += countFiles(file, exts);
- System.out.println("from " + title);
- System.out.println(count);
- }
- }
- // http://stackoverflow.com/questions/12616124/get-number-of-files-in-a-directory-and-its-subdirectories
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement