JAVA学习日记每天进步一点点之I/O

一个流被定义为一个数据序列。输入流用于向源读取数据,输出流用于向目标写数据。

FileInputStream和FileOutputStream

前者流用于从文件读取数据,后者用于创建一个文件并向文件中写数据。
前者的一些方法:在这里插入图片描述
后者的一些方法:
在这里插入图片描述

File类

创建文件夹:
mkdir():创建一个文件夹,成功则返回true,失败则返回false。
mkdirs():创建一个文件夹和他的所有父文件夹。
代码如下:

        String dirname="/tmp/user/java/bin";
		File b=new File(dirname);
		b.mkdirs();

读取文件夹:
isDirectory方法:判断File对象是否为目录,是则返回True,否则为False。

String dirname="/java/workplace/StingTest";
		File b=new File(dirname);
		if(b.isDirectory()) {
			System.out.println("目录"+dirname);
			String[] a=b.list();
			for(int i=0;i<=a.length;i++) {
				File f=new File(dirname+"/"+a[i]);
				if(f.isDirectory()) {
					System.out.println("目录"+dirname+"/"+a[i]);
				}
				else {
					System.out.println("文件"+dirname+"/"+a[i]);
				}
			}
		}
		else System.out.println("不是幕录");

删除文件
File.delete()方法:值得注意的但删除某个目录的时候,必须确保该目录下没有其他文件才可以正确删除。因此自己写一个deleteFolder()来删除文件夹下所有的文件。参考菜鸟教程:

public static void main(String[] args) {
		File f=new File("/tmp");
		deteleFolder(f);
		
	}

	private static void deteleFolder(File f) {
		// TODO Auto-generated method stub
		File a[]=f.listFiles();
		if(a!=null) {
		for(int i=0;i<=a.length;i++) {
			File b=new File("/tmp"+"/"+a[i]);
			if(b.isDirectory()) {
				deteleFolder(b);
			}
			else b.delete();
		}
		}
		f.delete();
	}

猜你喜欢

转载自blog.csdn.net/weixin_42625189/article/details/89885901
今日推荐