파일 접두사에 따라 모든 파일을 분류하다

20696 단어

서로 다른 파일을 분리하다


모든 파일을 가져오고, 파일 접두사를 가져오고, 다른 폴더를 만들고, 파일을 해당 위치로 출력합니다.
package com.util;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class FileIo {

	/**
	 * @ 
	 * @param fileName  
	 * @param OutPath  
	 * @param InputPath  
	 * 
	 */
	
	public static boolean writeFileContent(String InputPath, String fileName, String OutPath) {
		// true

		boolean pd = true;

		try {

			File file = new File(OutPath);
			if (!file.exists()) {//  
				file.mkdir();//  
			}

			System.out.println(" :" + InputPath + "\\" + fileName);
			System.out.println(" :" + OutPath + "\\" + fileName);

			FileInputStream fis = new FileInputStream(new File(InputPath + "\\" + fileName));
			FileOutputStream fos = new FileOutputStream(new File(OutPath + "\\" + fileName));

			
			//      
			int len = 0;
			byte[] by = new byte[1024];
			while ((len = fis.read(by)) != -1) {
				fos.write(by, 0, len);
			}
			//  
			fis.close();
			fos.close();

		} catch (Exception e) {
			// false
			pd = false;
			e.printStackTrace();
		}
		// 
		return pd;
	}


}

package com.util;

import java.io.File;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

/**
 * 
 * @author shp
 *  , 
 *
 */
public class Servce {

	    public static boolean getFile(String path,String newPath) {
	    	
	    	// false
	    	boolean pd=false;
	    	
	    	String extension="";
	    
	    	// set ---set 。
			Set<String> set = new HashSet<String>();
	    	
			// 
	        File file = new File(path);
	        // 
	        File[] array = file.listFiles();

	        for (int i = 0; i < array.length; i++) {
	            if (array[i].isFile()) {
	            	// 
	            	extension = array[i].getName().substring(array[i].getName().lastIndexOf("."));
	            	// set 。
	            	set.add(extension);
	            	
	            	// set 。
	            	 for (String s : set) {
	     	        	// 。
	     	        	pd = FileIo.writeFileContent(path, array[i].getName(), newPath+"\\"+extension);
	     	        	
	     			}
	            	 
	            	 // 。
	            } else if (array[i].isDirectory()) {
	                 getFile(array[i].getPath(), newPath);
	            }
	        }
	        
	        pd=true;
	        
			return pd;
	    }
}


package com.util;

import java.io.File;
import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;

public class FileTest {
	public static void main(String[] args) {
		
		Scanner input=new Scanner(System.in);
		
		System.out.println(" ");
		String path = input.next();
		
		System.out.println(" ");
		String newPath = input.next();
		
		boolean c = Servce.getFile(path,newPath);
		System.out.println(c==true?" !":" , 。");
		
	}

}

좋은 웹페이지 즐겨찾기