zoukankan      html  css  js  c++  java
  • JAVA实现文件遍历

    不知道为什么偏爱于文件遍历

    package xiya;
    
    import java.io.*;
    import java.util.*;
    
    public class WinSearch {
    	private String fileName[];
    	private int count = 0;
    	WinSearch(){
    		fileName = new String[100000];
    	};
    	
    	void winSearch(File file){
    		
    		if(file.isDirectory()){
    			System.out.println("<" + file.getAbsolutePath() + ">");
    			fileName[count++] = "<" + file.getAbsolutePath() + ">";
    			String filename[] = file.list();
    			for(int i = 0; i < filename.length; i++){
    				File temp = new File(file.getAbsoluteFile() + "\\" + filename[i]);
    				if(temp.isDirectory()){
    					winSearch(temp);
    				}
    				else{
    					System.out.println(filename[i]);
    					fileName[count++] = filename[i];
    				}
    			}
    		}
    		else{
    			System.out.println(file);
    			fileName[count++] = file.toString();
    		}
    	}
    	public static void main(String[] args) {
    		
    //		Scanner cin = new Scanner(System.in);
    //		String string = cin.next();
    //		File file = new File(string);
    //		WinSearch win = new WinSearch();//命令行输入
    //		win.WinSearch(file);
    		
    		WinSearch win = new WinSearch();  //缓冲区输入
    		
    		File in = new File("D:\\JAVA\\test\\文件遍历\\in.txt");
    		File out = new File("D:\\JAVA\\test\\文件遍历\\out.txt");
    		try{	
    			FileReader inOne = new FileReader(in);
    			BufferedReader inTwo = new BufferedReader(inOne);
    			String string = null;
    			while((string=inTwo.readLine()) != null){
    				win.winSearch(new File(string));
    			}
    			inOne.close();
    			inTwo.close();
    			
    			FileWriter outOne = new FileWriter(out);
    			BufferedWriter outTwo = new BufferedWriter(outOne);
    			for(int i = 0; i < win.count; i++){
    				outTwo.write(win.fileName[i]);
    				outTwo.newLine();
    			}
    			outOne.flush();//旧版本中没有刷新缓冲区,抛出异常=。=
    			outTwo.flush();
    			outOne.close();
    			outTwo.close();
    		}
    		catch (IOException e) {
    			System.out.println(e);
    		}
    	}
    
    }
    


  • 相关阅读:
    (字符串)子串变位词
    反转链表 II
    翻转链表
    覆盖索引
    MySQL索引结构之Hash索引、full-text全文索引(面)
    MySQL索引结构之B+树索引(面)
    MYSQL 存储引擎(面)
    MySQL架构(面)
    如何在Linux Mint 20系统上安装Pip
    如何在CentOS 8系统服务器上安装Nginx
  • 原文地址:https://www.cnblogs.com/lgh1992314/p/5835261.html
Copyright © 2011-2022 走看看