java中关于io流的问题
目录two中包含多个子目录及文件,编写程序对目录中的所有后缀为txt文件进行遍历,找出内容包含”tarena”的文件,求出这些文件大小之和。注意:所有的txt文件内容经过...
目录two中包含多个子目录及文件,编写程序对目录中的所有后缀为txt文件进行遍历,找出内容包含”tarena”的文件,求出这些文件大小之和。
注意:所有的txt文件内容经过编码,编码规则是字符按位取反,所以读取文件内容时需要反编码。
分数无所谓,求指点 展开
注意:所有的txt文件内容经过编码,编码规则是字符按位取反,所以读取文件内容时需要反编码。
分数无所谓,求指点 展开
3个回答
展开全部
看你取决于哪种策略了
1 用一个程序监听该目录,一旦目录中被加入了txt后缀的文件,则在 一个索引文件中加入该文件名称, 随后启动一线程,使用缓冲读取该文件(注意解密),直到找到"tarena"所在行,并记录该文件的大小到在索引文件中。
2 应用程序读取索引文件,就可快速得到 在某个目录下有哪些文件有tarena,并累计文件大小,
这种策略是牺牲在写文件的时间,完成索引的创建,读程序性能会提高
第二种策略
1 遍历 目录树,找到每一个.txt文件,每当找到一个txt时,启动一个新线程,解密,找出tarena所在行,并保存相关数据在内存如hashmap中,
2 应用程序从hashmap中直接获取所有的内容
这种策略牺牲的是读的时间 其他差不多
第三种策略 使用lucene框架,主要是针对每个文件建立分词索引,这里意义不大,所以建议使用上面两种策略。
1 用一个程序监听该目录,一旦目录中被加入了txt后缀的文件,则在 一个索引文件中加入该文件名称, 随后启动一线程,使用缓冲读取该文件(注意解密),直到找到"tarena"所在行,并记录该文件的大小到在索引文件中。
2 应用程序读取索引文件,就可快速得到 在某个目录下有哪些文件有tarena,并累计文件大小,
这种策略是牺牲在写文件的时间,完成索引的创建,读程序性能会提高
第二种策略
1 遍历 目录树,找到每一个.txt文件,每当找到一个txt时,启动一个新线程,解密,找出tarena所在行,并保存相关数据在内存如hashmap中,
2 应用程序从hashmap中直接获取所有的内容
这种策略牺牲的是读的时间 其他差不多
第三种策略 使用lucene框架,主要是针对每个文件建立分词索引,这里意义不大,所以建议使用上面两种策略。
展开全部
超级简单,File类中有个带过滤器参数的方法,直接就过滤掉不需要的文件,再读出内容,用String类的方法,查找字符串就OK乐。
追问
方法名是什么?直接点...亲~
追答
还评他的答案为满意答案?Java中怎么监听目录?他能做到?简直胡答……
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个得要用到全文检索了 百度Lucene
不过你得先将 tarena先编码一次作为检索条件
不过你得先将 tarena先编码一次作为检索条件
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询