1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
文件搜索

实验10-11 文件搜索系统一、实验要求深入掌握File类。深入掌握流的使用,特别是文件字节输入/输出流、文件字符读/写流。学会使用函数递归的方式完成复杂的功能。掌握抽象类的使用,了解其中的使用原则和技巧。背景说明:Windows操作系统有一个文件搜索的功能,如图1所示图1 Windows操作系统文件搜索的功能截图但是,它的搜索条件还是比较少的。本实验要求在此基础上增加几个搜索条件。具体要求:实现如图2所示的系统。要更改系统的标题,把你的班级、学号和姓名替换“北京林业大学信息学院王建新”。示例程序已经随本文件放在FTP服务器上,请同学下载,双击打开后反复使用。自己做的系统力争和示例程序效果类似。图2 实验示例可执行程序截图二、实验内容和步骤1.用记事本书写一个Java程序(1)、建立个人子目录步骤1:建立个人子目录上机时先在D盘上建立一个以自己班级+学号+姓名+实验序号为目录名的子目录,如计算机09级一班学号为0911001的张三同学,就用“计09-1班0911001张三Java实验10-11”为子目录名。实验完成的源代码、Java字节码都要放在这个文件夹下。步骤2:建立Java源代码文件在所建立的文件夹下建立一个记事本文件FileSearch.txt,并把它重命名为FileSearch.java(2)、编写源代码步骤1:把创建一个公共类FileSearch:public class FileSearch { }步骤2:编写FileSearch类的方法:包括解析配置文件,整理约束条件、匹配文件,递归搜索文件夹等。步骤3:编写main()方法:main()方法负责接收配置文件信息,不断接收待搜索的文件夹信息。2.调试和运行(1)、调试步骤1:使用命令行工具,先进入用所建的目录下,为了进入目录方便,可以把源代码拷贝至根目录下再进行操作。参见测试数据。步骤2:用javac FileSearch.java编译并调试源代码文件。(2)、运行使用java FileSearch 运行程序。程序功能如图2所示。三、实验考核1、把文件夹和其中的2种文件上传至1/wangjianxin/homework/Java/ 注意:要压缩存放,把“计09-1班0911001张三Java实验10-11”格式的文件夹直接打包。要按照班级存放。时间限制:2010年12月24日17:00。3、只提交电子文档,不要提交纸质文档。4、电子版本必须按时、按要求上交。以下情况将得不到成绩:(1)没有按照规定的时间上交电子版本;(2)文件夹或其中的文件没有按照规定命名。(3)有抄袭行为和被抄袭的行为。这个程序是这样说的:功能:搜索指定文件夹下的所有文件内容. 经本人测试Excel,paf文件不能,其它暂未发现,我想这种搜索方式的确有局限性,主要用于搜索.txt,doc文件. 若想做一个强大的文件内容搜索引擎,还是考虑Lucene,本人正在研究中...这种搜索文件的方法与读写文件不同,它需要将文件的内容读出,然后在内容中查找对应的内容. 想想这样种做法都很浪费性能,而且文件夹下文件过多时程序必死无疑....package filesearch;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.HashSet;import java.util.Iterator;import java.util.List;import java.util.Set;import java.util.TreeSet;public class SearchStr { public static void main(String[] args) { // 要查找的文件夹 String path = D:\\file\\; // 要查询的字符串 String str = searchText; // 设置读取文件内容时的文件编码 String encoding = utf8; // 某个文件的内容 String content = ; // 所有文件的地址 Set fileNameSet = SearchStr.fileNameSet(path); // 符合条件的文件路径 List resultFile=new ArrayList(); TreeSet treeSet = new TreeSet(fileNameSet); for(Iterator i = treeSet.iterato

文档评论(0)

mv2323 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档