Java实现简单文件过滤器功能
代码思路:
想要循环遍历文件夹下所有子文件夹,就要用到递归。
首先判断路径是否存在:
是:获取文件
判断是否文件夹:
是:调用自身,继续获取子文件夹下内容
否:判断文件后缀,符合则输出
否:输出提示
package com.hanqi.maya.util; import java.io.File; import java.util.Scanner; public class TestGuolv { public static void main(String[] args) { Scanner sc=new Scanner(System.in); System.out.println("请输入要查找的路径"); String s=sc.nextLine(); File file =new File(s); filesum(file,1); } public static void filesum(File f,int len){ if(f.exists()){//判断路径是否存在 File[] files=f.listFiles(); //获取路径下的文件名 for(File fi:files){ //循环输出文件名 if(fi.isDirectory()){ //判断是否文件夹 printBlank(len); System.out.println(fi.getName()+"文件夹"); filesum(fi,len+1); //继续调用自身 }else{ printBlank(len); //输出空格 if(fi.getName().endsWith(".java")){//如果是文件则 判断是否“.java”后缀,是则输出 System.out.println(fi.getName()); } } } }else{ System.out.println("文件不存在!!!"); } } public static void printBlank(int len){ for (int i = 0; i < len; i++) {//输出. 以区分文件夹层次 System.out.print(". "); } } }
总结与问题:
昨天学到输出文件夹下所有文件,今天稍作改动变成了找出文件夹下指定后缀的文件。
又因为输出的时候没有层次,所以写了个循环用来在输出的文件前面加空格以便层次分明,再后来发现空格对汉字的层次不够分明,遇到汉字会缩进几个空格,但是用符号就不会这样。
还有如何控制指定后缀名的问题没有解决。
以上这篇Java实现简单文件过滤器功能就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
Java Web实现session过期后自动跳转到登陆页功能【基于过滤器】
本文实例讲述了Java Web实现session过期后自动跳转到登陆页功能.分享给大家供大家参考,具体如下: 通过过滤器的方式实现 session过期后自动跳转到登陆页 过滤器只在与servlet规范2.3版兼容的服务器上有作用.如果你的Web应用需要支持旧版服务器,就不能使用过滤器. 一.建立基本过滤器 建立一个过滤器涉及下列五个步骤: 1)建立一个实现Filter接口的类SessionFilter .这个类需要三个方法,分别是:doFilter.init和destroy.doFilter方法
-
基于java servlet过滤器和监听器(详解)
1 过滤器 1.过滤器是什么? servlet规范当中定义的一种特殊的组件,用于拦截容器的调用. 注:容器收到请求之后,如果有过滤器,会先调用过滤器,然后在调用servlet. 2.如何写一个过滤器? 1.写一个java类,实现Filter接口; 2.在接口方法中实现拦截方法; 3.配置过滤器(web.xml); 3.配置初始化参数 1.配置初始化参数.(init-param) 2.通过filterconfig提供的getinitparamenter方法读取初始化的值. 4.优先级: 当有多个过
-
java过滤html标签获取纯文本信息的实例
如下所示: package com.lyt.base.util; import java.util.regex.Pattern; public class FilterHtmlUtil { public static String Html2Text(String inputString){ String htmlStr = inputString; //含html标签的字符串 String textStr =""; java.util.regex.Pattern p_script;
-
Java编程实现基于用户的协同过滤推荐算法代码示例
协同过滤简单来说是利用某兴趣相投.拥有共同经验之群体的喜好来推荐用户感兴趣的信息,个人通过合作的机制给予信息相当程度的回应(如评分)并记录下来以达到过滤的目的进而帮助别人筛选信息,回应不一定局限于特别感兴趣的,特别不感兴趣信息的纪录也相当重要. 协同过滤又可分为评比(rating)或者群体过滤(social filtering)协同过滤以其出色的速度和健壮性,在全球互联网领域炙手可热 UserCF的核心思想即为根据用户数据模拟向量相似度,我们根据这个相似度,来找出指定用户的相似用户,然后将相似用
-
JavaWeb Servlet中Filter过滤器的详解
JavaWeb Servlet中Filter过滤器的详解 1.简述 Filter过滤器,对web服务器所有web资源进行过滤,从而实现一些特殊的功能(权限访问控制.过滤敏感词汇.压缩响应信息).Filter能够对Servlet容器的请求和响应进行检查和修改,其本身不能生成请求request和响应response,只提供过滤作用(Servlet被调用之前检查Request对象修改其相关信息,Servlet被调用后检查Response修改其相关信息),Filter对象常驻服务器. 2.Lifecyc
-
java并发访问重复请求过滤问题
问题描述 前段时间遇到个问题,自己内部系统调用出现重复请求导致数据混乱. 发生条件:接受到一个请求,该请求没有执行完成又接受到相同请求,导致数据错误(如果是前一个请求执行完成,马上又接受相同请求不会有问题) 问题分析:是由于数据库的脏读导致 问题解决思路 1.加一把大大的锁 (是最简单的实现方式,但是性能堪忧,而且会阻塞请求) 2.实现请求拦截 (可以共用,但是怎么去实现却是一个问题,怎么用一个优雅的方式实现,并且方便复用) 3.修改实现 (会对原有代码做改动,存在风险,最主要的是不能共用) 最
-
Java实现DFA算法对敏感词、广告词过滤功能示例
一.前言 开发中经常要处理用户一些文字的提交,所以涉及到了敏感词过滤的功能,参考资料中DFA有穷状态机算法的实现,创建有向图.完成了对敏感词.广告词的过滤,而且效率较好,所以分享一下. 具体实现: 1.匹配大小写过滤 2.匹配全角半角过滤 3.匹配过滤停顿词过滤. 4.敏感词重复词过滤. 例如: 支持如下类型类型过滤检测: fuck 全小写 FuCk 大小写 fuck全角半角 f!!!u&c ###k 停顿词 fffuuuucccckkk 重复词 敏感词过滤的做法有很多,我简单描述我现在理
-
Java实现简单文件过滤器功能
代码思路: 想要循环遍历文件夹下所有子文件夹,就要用到递归. 首先判断路径是否存在: 是:获取文件 判断是否文件夹: 是:调用自身,继续获取子文件夹下内容 否:判断文件后缀,符合则输出 否:输出提示 package com.hanqi.maya.util; import java.io.File; import java.util.Scanner; public class TestGuolv { public static void main(String[] args) { Scanner
-
Android编程实现简单文件浏览器功能
本文实例讲述了Android编程实现简单文件浏览器功能.分享给大家供大家参考,具体如下: 运行效果: 布局: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:lay
-
基于Java实现Avro文件读写功能
目录 模式(schema) 与其他系统的比较 Java客户端实现 定义一个schema 使用Java代码生成插件生成的User类进行序列化和反序列化 在不生成User类的情况下直接进行序列化和反序列化操作 总结 Apache Avro是一个数据序列化系统.具有如下基本特性: 丰富的数据结构.一种紧凑.快速的二进制数据格式.一个容器文件,用于存储持久数据.远程过程调用 (RPC).与动态语言的简单集成. 代码生成不需要读取或写入数据文件,也不需要使用或实现 RPC 协议. 代码生成作为一种可选的优
-
Java实现简单银行ATM功能
本文实例为大家分享了Java实现简单银行ATM功能的具体代码,供大家参考,具体内容如下 实现功能 1.用户需要通过输入银行卡号和密码才能进入ATM系统 2.用户可以在ATM中实现取款.存款.转账.余额查询.退出系统等功能 简单分析 1.创建User类(cardNo,identity,phone,username,password,balance(余额)) 2.创建Bank类,主要实现初始化用户.用户登录.显示菜单.取款.存款.转账.余额查询.退出系统等功能. 代码实现 User.java pub
-
用Java实现简单ATM机功能
本文实例为大家分享了Java实现简单ATM机功能的具体代码,供大家参考,具体内容如下 项目介绍 基于大家使用银行卡在ATM机取款操作,进行相对应ATM机操作流程的实现. 项目功能 1.注册功能: 根据用户输入的账号密码申请一张银行卡,存储在银行卡类型的数组中(一张银行卡对应一个有效用户). 2.登录功能: 登陆失败:重新登陆 或 注册登陆成功:对登陆的这张银行卡可以进行一下操作:存款.取款.查余额.转账.退卡功能. 项目知识点 3.java基本语法的使用4.一维数组5.函数调用,封装6.Java
-
Java实现简单邮件发送功能
本文实例为大家分享了Java实现简单邮件发送的具体代码,供大家参考,具体内容如下 需要的jar包: activation-1.1.1.jar mail-1.4.7.jar QQ邮箱设置开启POP3/SMTP服务,并获得授权码 java实现简单邮件发送 import com.sun.mail.util.MailSSLSocketFactory; import javax.mail.*; import javax.mail.internet.InternetAddress; import javax
-
java实现简单日期计算功能
本文讲的java日期计算比较偏,用到的地方很少(比如获取今天所在周的周一或者周日,获取今天是本月的第几周...),这些方法是以前做项目遗留下来的,现在整理一下,跟大家分享. 工具类主要有一下方法: public static Date getFirstMondayOfMonth(String dateString, String dateFormat) throws Exception 获取指定月份的第一个星期一,比如2014-12 月的第一个周一是2014-12-01 public stati
-
Java实现简单密码加密功能
本文实例为大家分享了Java实现简单密码加密案例,供大家参考,具体内容如下 需求: 首先将一组数据倒序,然后将每位数字都加上5,再用和除以10的余数代替该数字, 最后将第一位和最后一位数字交换. 请任意给定一个小于8位的整数, 然后,把加密后的结果在控制台打印出来. 分析: 1.数据小于8位数 2.数据倒序 3.每位数字都加上5,再用和除以10的余数代替该数字 4.最后将第一位和最后一位数字交换 5.打印输出 代码实现: public class Encrypt{ public static v
-
基于java实现简单发红包功能
本文实例为大家分享了java实现简单发红包的具体代码,供大家参考,具体内容如下 这个案例是普通红包,均分的,不是拼手气红包. package nuc.edu.day01.demo05; /** * @author Administrator * 用户类 */ public class User { private String name; private Double money; public User() { } //显示当前余额 public void show(){ System.out
-
java实现简单的验证码功能
最近要做一个网站,要求实现验证码程序,经过不断调试,终于成功实现功能. 一.验证码生成类 生成验证码的话需要用到java的Graphics类库,画出一个验证码 废话不多说,直接上代码 package verificationCode; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.image.BufferedImage; import java.awt.image.Re
随机推荐
- 实例讲解Android中ContentProvider组件的使用方法
- ASP实现强制图片下载函数
- redis实现加锁的几种方法示例详解
- 切换dos并dir的vbs
- 天涯(tianya)bbs系统架构分析
- python的paramiko模块实现远程控制和传输示例
- asp.net Gridview里添加汇总行
- 怎么用javascript进行拖拽第1/2页
- JS兼容浏览器的导出Excel(CSV)文件的方法
- ASP.NET Web API教程 创建Admin视图详细介绍
- Egret引擎开发指南之创建项目
- asp程序定义变量比不定义变量速度快一倍
- jQuery旋转插件—rotate支持(ie/Firefox/SafariOpera/Chrome)
- 从零学习node.js之文件操作(三)
- php设置允许大文件上传示例代码
- Android应用获取设备序列号的方法
- 实例讲解Android应用中自定义组合控件的方法
- 基于bootstrap实现广告轮播带图片和文字效果
- C#的Socket实现UDP协议通信示例代码
- php实现分页功能的3种方法第1/3页