A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

利用递归查找D盘下是否存在number.txt文件,如果没有该文件则创建;提示用户输入10个字符串,以追加的方式写入到number.txt中         求大神 求解!!!!!!!!!!!!!!!!

7 个回复

正序浏览
Mrchenhao 发表于 2016-9-6 19:33
我个人觉得不需要知道循环节次数吧

那你怎么判断该文件是否存在呢?
回复 使用道具 举报
孤峰无悔 发表于 2016-9-6 19:16
你并不知道什么时候递归完了
也就是遍历完整个d盘
计数就是为了帮你判断是不是遍历完了

我个人觉得不需要知道循环节次数吧
回复 使用道具 举报
Mrchenhao 发表于 2016-9-6 19:09
非常感谢!!!!但是我有个问题,统计个数作用是什么?

你并不知道什么时候递归完了
也就是遍历完整个d盘
计数就是为了帮你判断是不是遍历完了
当你遍历完了还没有找到时,进行后续操作
也就是录入字符串

点评

@柳柳桑 给几个技术分呗  发表于 2016-9-6 19:24
回复 使用道具 举报
不好意思上面的代码只需要两个参数就够了
传集合进去起始没用
回复 使用道具 举报
孤峰无悔 发表于 2016-9-6 19:00
直接给你讲思路吧
代码我懒得敲了,麻烦

非常感谢!!!!但是我有个问题,统计个数作用是什么?
回复 使用道具 举报
直接给你讲思路吧
代码我懒得敲了,麻烦

分析:
                                先定义一个方法,统计目标文件夹中的文件个数
                               
                               
                                定义计数器count记录文件个数
                                先将路径("D:\\")封装成File对象
                                获取文件数组
                                判断数组是否为空
                                        不为空,遍历数组
                                                判断是不是文件
                                                        是,比较文件名
                                                                不相同,计数器+1(当计数器等于上面方法的文件个数时,打印>>>该文件不存在)
                                                        不是,递归
                               
                               
                                for循环十次,接收十个字符串
                                        每接收一个字符串直接写到目标文件中(number.txt)
                                                当目标文件不存在时FileOutputStream会自动创建
                                                fos.write(string.getBytes());
数文件的代码给你,其他的自己写吧
[Java] 纯文本查看 复制代码
public  int demo(File file, List<String> list,int count) {
		File [] arr = file.listFiles();
		
		for (File file2 : arr) {
			if (file2.isFile()) {
				count++;
				list.add(file2.getName());
			}else{
//				list.add(file2.getName());
				//不是文件就递归调用,递归返回的就是累加过的文件数!!!!!!!!!
				count = demo(file2,list,count) ;
			}
		}
		return count;
	}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马