给了一个4G的目录
要找出其中.java后缀的
然后还要在所有找出的文件进行全文搜索一个自己手动输入的字符串
有没有个优化方案
能够速度快一点的输出
要找出其中.java后缀的
然后还要在所有找出的文件进行全文搜索一个自己手动输入的字符串
有没有个优化方案
能够速度快一点的输出
解决方案 »
- 请各位大侠帮忙,包含取值为0的字节数组如何转成字符串
- 集合ArrayList的add怎么编译不过?
- 为什么我定义了还是错误啊?
- java swing 如何实现一个类的双击事件
- 如何对查询表queryDataSet传递参数?
- 紧急求助:有人用JAVA写SOCKET从LINUX发协议到WINDOWS吗?
- 我是初学者,请教各位大虾:JCreatorPro的环境变量如何设置?
- 向大家请教问题,为表诚意,先给300分。(如果每个帖子的有效回答超过10个,我就会再开一个,直到问题圆满解决)
- socket 网络接收发现的汉字问题 (急)
- 怎么用不了?
- 一个if问题
- 求jdbc连接mysql的小程序,能有查询 修改功能
搜索修改文件,可以用下nio包中的几个类:
FileChannel;
MappedByteBuffer;
CharBuffer;//还有类似的,取决于你操作的类型
可以这样得到通道:FileChannel fc = new RandomAccessFile(new File(""),"r_w").getchannel();
这种方法的性能比直接用RandomAccessFile的性能好不少。你先了解下。
完了再遍历文件内容
FileChannel 可以把文件映射到内存中进行,操作效率提高了
{
File[] files=dir.listFiles();
for(File file: files)
{
if(file.isDirectory())
Search(file);
else
{
if(file.getName().endsWith(".java"))
System.out.println(file.toString());
}
}
}