/** 
     * 功能:1、Java读取txt文件的内容 
     *      2、存储文件到txt 
     *      3、正则表达读取文本文件中的IP 
     * 步骤:1:先获得文件句柄 
     * 2:获得文件句柄当做是输入一个字节码流,需要对这个输入流进行读取 
     * 3:读取到输入流后,需要读取生成字节流 
     * 4:一行一行的输出。readline()。 
     * 备注:需要考虑的是异常情况 
     * @param filePath 
     */ 
    public static void readTxtFile(String filePath){ 
        try { 
                String encoding="utf-8"; 
                File file=new File(filePath); 
                if(file.isFile() && file.exists()){ //判断文件是否存在 
                    InputStreamReader read = new InputStreamReader( 
                    new FileInputStream(file),encoding);//考虑到编码格式 
                    BufferedReader bufferedReader = new BufferedReader(read); 
                    String lineTxt = null; 
                    Set<String> set=new HashSet();  
                    while((lineTxt = bufferedReader.readLine()) != null){ 
                        //System.out.println(lineTxt); 
                        //正则表达式读取IP地址 
                        String regexString="\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}"; 
                        Pattern p = Pattern.compile(regexString); 
                        Matcher m = p.matcher(lineTxt); 
                        boolean result = m.find(); 
                        while(result) { 
                            set.add(m.group().trim()); 
                            //System.out.println(m.group()); 
                            //System.out.println(set.size()); 
                            result = m.find(); 
                            //System.out.println(set.size()); 
                        } 
                    } 
                    //存储到txt文本文件 
                    FileWriter fileWriter=new FileWriter("D:\\MyEclipse\\workspace\\HttpClient\\src\\out\\201.txt"); 
                    for(String string :set){ 
                         fileWriter.write(string+"\n"); 
                    } 
                    fileWriter.flush(); 
                    fileWriter.close(); 
 
                    read.close(); 
        }else{ 
            System.out.println("找不到指定的文件"); 
        } 
        } catch (Exception e) { 
            System.out.println("读取文件内容出错"); 
            e.printStackTrace(); 
        } 
 
    }

发布评论
IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

Linux环境变量配置文件以及启动顺序详解
你是第一个吃螃蟹的人
发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。