Java文件操作编写一个程序,列出当前目录下所有文件和子目录的名称,并将它们保存在一个文本文件中。说明:对于子目录中的内容,也要递归地进行处理

19 篇文章 0 订阅

Java编写一个程序,列出当前目录下所有文件和子目录的名称,并将它们保存在一个文本文件中。说明:对于子目录中的内容,也要递归地进行处理。

困扰了好几个小时,要将字符串写入txt文档中,一条一条目录写入,不能覆盖上一条,如果覆盖了等于没有存储。最终查到,只需在outputStream = new FileOutputStream(file2,true)中加一个参数true即可,最终成功解决!

package pack3;
import java.io.File;
import java.io.FileOutputStream;
public class list1 {
	public static void getFile(File file){
		if(file != null){
			File[] f = file.listFiles();
			if(f != null){
				for(int i=0;i<f.length;i++){
					getFile(f[i]);
				}
			}else{
				System.out.println(file);	
				File file2 = new File("E:/桌面—s/1桌面s/1资源pa/read.txt");
				FileOutputStream outputStream;
				try {
					outputStream = new FileOutputStream(file2,true);//加true这个参数防止覆盖文档之前的字符
					outputStream.write(String.valueOf(file+"\n").getBytes());
					outputStream.close();
				} catch (Exception e) {
					e.printStackTrace();
				}
			}	
		}
	}
	public static void main(String[] args) {
		String path = "E:/桌面—s/网络流量分析文档/"; 
		
		//清空txt文件,不清空会重叠,如果不需要清空可删除这些代码
		File file = new File("E:/桌面—s/1桌面s/1资源pa/read.txt");
		FileOutputStream outputStream;
		try {
			outputStream = new FileOutputStream(file);
			outputStream.write(" ".getBytes());
			outputStream.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
		System.out.println("txt文件已清空,下面开始写入");
		
		File f = new File(path);
		list1.getFile(f);
		System.out.println("所有文件目录已写入txt文档中!");
	}
		
}

输出到文档:
在这里插入图片描述

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值