jspfile对象的应用-检索指定类型的文件

学习目标
要实现搜索,首先要找到嫌疑犯的位置(listRoots()方法)
接着用GPS(roots[i].getPath)定位到他的位置
//获取当前用户的根目录信息
 <%
    File[] roots =File.listRoots();
 
%>
//HTML显示里面
<select name="path">
    <% for(int i=0;i<roots.length;i++)
    {
%>
    <option value=<% =roots[i].getPath%>><% =roots[i].getPath%></option>
    <%}%>
</select>
================
什么样的嫌犯会待在怎样的屋子,需要找判断屋子的类型
<p>搜索文件类型</p>
<select name="type">
    <option value="txt" selected>*.txt文件</option>
    <option value="txt" selected>*.jsp文件</option>
    <option value="txt" selected>*.exe文件</option>
</select>
<input type="submit" value="搜索">
====================
GPS找到了这种类型的屋子,如何让嫌犯现出原形呢?
首先要靠警察(重载FilenameFilter接口)
警察要靠的是枪(该接口的accept()方法)
如何确认是嫌犯,我们就缉拿归案(File的list()方法)
===
代码
<%class Ffilter implements FilenameFilter/*警察*/
    {
    String str =null;
    Ffilter(String s){
    str="."+s;
    public boolean accept(File dir,String name){
    return name.endsWith(str);//指定扩展名尾相当于这个嫌犯的特征是有.在脸上的
}
}
}
%>
//要实现嫌犯的犯罪类型
<%
String strPath=request.getParameter("path");//接通嫌犯的电话,进行谈判
String strType=request.getParameter("type");
%>
<p>在<% =strPath%>目录下的.<%=strType%>文件</p>
<%
    File FilterType=new File(strType);//文件类型
    String strName[] =dir.list(FilterType);//用list方法列出满足调节的
%>
=======
2:抓到了============================================================================================
输出搜索结果,抓到嫌犯关进监狱(int intFilerNum =strname.length)方法
<%
    int intFilerNum = strName.length;//获取数组的长度
    if(intFilerNum>0){
    for(int i=0;i<intFilerNum;i++){//监狱要给嫌犯上锁
    out.print("<br>"+strName[i]);
}
}else{
out.print("<br>"+"无此类型的文件存在");
}
%>
=========
在jsp导入file包
<%@ page import="java.io.*"%>
==========
2:实现代码
admin代码
  <form action="index.jsp" method="post">
   <%
    File[] roots =File.listRoots();
 
%>
<select name="path">
    <% for(int i=0;i<roots.length;i++)
    {
%>
    <option ><%=roots[i].getPath()%></option>
    <% }%>
</select>
<select name="type">
    <option value="txt" selected>*.txt文件</option>
    <option value="txt" selected>*.jsp文件</option>
    <option value="txt" selected>*.exe文件</option>
</select>
<input type="submit" value="搜索">
  </form>
====
index,jsp代码实现逻辑结构
  <%class Ffilter implements FilenameFilter/*警察*/
    {
    String str =null;
    Ffilter(String s){
    str="."+s;
    
}
public boolean accept(File dir,String name){
    return name.endsWith(str);//指定扩展名尾相当于这个嫌犯的特征是有.在脸上的
}
}
%>
<%
String strPath=request.getParameter("path");//接通嫌犯的电话,进行谈判
String strType=request.getParameter("type");
%>
<p>在<%=strPath%>目录下的.<%=strType%>文件</p>
<%
    File dir= new File(strPath);
    Ffilter FilterType=new Ffilter(strType);//文件类型
    String strName[] =dir.list(FilterType);//用list方法列出满足调节的
%>
<%
    int intFilerNum = strName.length;//获取数组的长度
    if(intFilerNum>0){
    for(int i=0;i<intFilerNum;i++){//监狱要给嫌犯上锁
    out.print("<br>"+strName[i]);
}
}else{
out.print("<br>"+"无此类型的文件存在");
}
%>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值