我需要递归一个文件夹下所有的文件并进行操纵,文件夹下也有文件夹,我用一个list存储递归得到的所有文件可能会造成溢出。我需要当此list为10000时候执行,然后清空list,请问如何实现。代码如下:
static void getFiles(String filePath){
File root = new File(filePath);
File[] files = root.listFiles();
for(File file:files){
if(file.isDirectory()){//是否为文件夹
getFiles(file.getAbsolutePath());
filelist.add(file.getAbsolutePath());//filelist是ArrayList,用来存储所有文件路径;
}else{
//对文件的操作;
}
请问我改如何修改才能让程序在flielist大小每当10000执行一次,然后在将其清空,继续执行,不至于让filelist太大从而解决内存溢出问题。本人线程比较菜,求大神帮忙。最好能在此代码上修改。
递归一个文件夹下所有文件以及文件夹,造成栈内存溢出,求解决
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答 默认 最新
悬赏问题
- ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
- ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
- ¥30 截图中的mathematics程序转换成matlab
- ¥15 动力学代码报错,维度不匹配
- ¥15 Power query添加列问题
- ¥50 Kubernetes&Fission&Eleasticsearch
- ¥15 報錯:Person is not mapped,如何解決?
- ¥15 c++头文件不能识别CDialog
- ¥15 Excel发现不可读取的内容
- ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题