java基础—java的Io操作学习(1)

学习java的Io操作(1)

大家好,又见面了,我是全栈君。

今天开始学习java的Io操作,自己写了一些简单的Io操作!

package com.dufy.io;

import java.io.File;

/**
 * 
 * 练习IO操作 first <br/>
 * 代码是写出来的,不是看出来的,我是阿飞-aflyun <br/>
 * 在路上! 
 * @author aflyun
 * @email 742981086@qq.com
 *
 */
public class TestFisrtIo {

	public static void main(String[] args) {
		printConstant();
		createFolder();//1:创建一个新的文件夹
		createFile();//2:创建一个新的文件
		//deleteFolder();//3:删除一个文件夹
		//deleteFile();//4:删除一个文件
		list();//5:列出指定目录的全部文件(包括隐藏文件)
		listFile();//6:列出指定目录的全部文件(包括隐藏文件)
		isFolderOrFile();//7:判断是文件夹还是文件
		//8:查找指定目录的文件夹和文件
		String pathName = "E:"+ File.separator+"repository_git";
		File file = new File(pathName);
		findAllFf(file);
		
	}
	/**
	 * File类的两个常量
	 */
	public static void printConstant() {
		System.out.println(File.separator);	//打印结果  \
		System.out.println(File.pathSeparator);	//打印结果  ;
		//注:在使用中为了我们程序的可移植性和健壮性,建议使用 这两个常量
	}

	/**
	 * 1:创建一个新的文件夹(包括创建多层目录文件夹)
	 * boolean mkdir()  创建此抽象路径名指定的目录。  
 	 * boolean mkdirs()  创建此抽象路径名指定的目录,包括创建必需但不存在的父目录。  
	 */
	public static void createFolder() {
		String folderName1 = "E:"+ File.separator+"/firstFolder1";
		String folderName2 = "E:"+ File.separator+"/firstFolder2/test/hello";
		File file1 = new File(folderName1);
		file1.mkdir(); //创建文件夹 在E:/firstFolder 
		File file2 = new File(folderName2);	//创建文件夹 在/firstFolder/test/hello
		file2.mkdirs();
	}
	/**
	 * 2:创建一个新的文件
	 */
	public static void createFile() {
		String fileName = "E:"+ File.separator+"/firstFile.txt";
		File file = new File(fileName);
		//使用try catch 捕获异常
		try {
			file.createNewFile();
			//createTempFile(prefix, suffix); createTempFile("tmp", ".txt"); 创建临时文件,默认在c:下
			//createTempFile(prefix, suffix, directory); 指定的目录创建临时文件
		} catch (Exception e) { 
			e.printStackTrace();
		}
	}
	/**
	 * 3:删除一个文件夹
	 */
	public static void deleteFolder() {
		String folderName = "E:"+ File.separator+"/firstFolder1";
		File file = new File(folderName);
		if(file.exists()){
			file.delete();
		}else{
			System.out.println("文件夹不存在!");
			
		}
			
	}
	/**
	 *  4:删除一个文件
	 */
	public static void deleteFile() {
		String fileName = "E:"+ File.separator+"/firstFile.txt";
		File file = new File(fileName);
		if(file.exists()){
			file.delete();
		}else{
			System.out.println("文件不存在!");
			
		}
	}
	/***
	 * 5:列出指定目录的全部文件(包括隐藏文件)
	 * 使用file.list()列出的不是完整路径,返回的是String数组
	 */
	public static void list() {
		File file = new File("E:"+ File.separator);
		String[] list = file.list();
		for (String string : list) {
			System.out.println(string);
		}
	}
	/**
	 * 6:列出指定目录的全部文件(包括隐藏文件)
	 * 使用file.listFiles(),列出完整路径,返回的是File的数组
	 */
	public static void listFile() {
		File file = new File("E:"+ File.separator);
		File[] listFiles = file.listFiles();
		for (File file2 : listFiles) {
			System.out.println(file2);
		}
	}
	/**
	 * 7:判断是文件夹还是文件
	 */
	public static void isFolderOrFile() {
		String folderName = "E:"+ File.separator+"/firstFolder1";
		String fileName = "E:"+ File.separator+"/firstFile.txt";
		File f1 = new File(folderName);
		File f2 = new File(fileName);
		if(f1.isDirectory()){
			System.out.println("is Directory");
		}
		if(f2.isFile()){
			System.out.println("is File");
		}
	}
	/**
	 * 8:查找指定目录的文件夹和文件
	 */
	public static void findAllFf(File f) {
		if(f != null){
			if(f.isDirectory()){
				System.out.println(f);
				File[] listFiles = f.listFiles();
				for (File file : listFiles) {
					findAllFf(file);//递归
				}
			}else{
				System.out.println(f);
			}
		}
		
	}

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/121270.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 热拔插更换硬盘方法

    热拔插更换硬盘方法热拔插更换硬盘方法如果要替换的磁盘已做了镜像,推荐如下步骤:1.删除该磁盘上所有逻辑卷的复件,使用rmlvcopy命令或unmirrorvg命令。2.从卷组中删除该磁盘,使用reducevg命令。3.使用rmdev命令删除该磁盘定义。4.物理移除该磁盘。如果磁盘不是可热交换的(hot-swappable),可能要求重启系统。5.使备用的磁盘可用。如果磁盘是可

    2022年5月30日
    35
  • docker dockerfile详解_进入docker容器命令

    docker dockerfile详解_进入docker容器命令前言Dockerfile是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。Dockerfile简介Dockerfile是用来构建Docker镜像的构建文件,是由一系列

    2022年7月30日
    7
  • js统一全局变量

    js统一全局变量      前言:js中难免要用到全局变量,但是过多的全局变量会影响js的性能,在此我创造了一个统一全局变量的写法,只需要这一个全局变量即可/***全局变量管理器*/varoverallManager=(function(){ //存储全局变量,闭包保护不受污染 varoverall={}; /** *@paramname *…

    2022年5月28日
    46
  • 博弈论基础mooc答案_博弈论考试题及答案

    博弈论基础mooc答案_博弈论考试题及答案1、“博弈的本意是什么?A、摔跤B、下棋C、赌博D、游戏参考答案:B2、古时“弈”字,就是指A、跳棋B、象棋C、五子棋D、围棋参考答案:D3、按照博弈方是否达成有约束力的协议,可以分为()A、理性博弈和非理性博弈B、完全信息博弈和不完全信息博弈C、动态博弈和静态博弈D、合作博弈与非合作博弈参考答案:D4、囚徒困境的例子属于()的典型A、非合作博弈B、合作博弈C、理性博弈D、动态博弈参考答案:A5、“石头剪刀布游戏,属于()。A、贯序博弈B、动态博弈…

    2022年10月15日
    3
  • 差分数组详解[通俗易懂]

    差分数组详解[通俗易懂]题目:来先看一道裸题,有n个数。m个操作,每一次操作,将x~y区间的所有数增加z;最后有q个询问,每一次询问求出x~y的区间和。思路:很明显,直接用前缀和无法快速满足这个操作,所以我们就用到了查分数组。设a数组表示原始的数组;设d[i]=a[i]-a[i-1](1&lt;i≤n,d[1]=a[1]);设f[i]=f[i-1]+d[i](1&lt;i≤n,f[1]=d[1]=a[1]);设sum[i…

    2022年6月9日
    39
  • HTTP请求返回415错误码定位解决

    HTTP请求返回415错误码定位解决今天在工作中,发现我再调用外部API接口的时候,发现一个奇怪的问题,就是我Eclipse中写代码调用外部API接口时返回HTTP状态码是415,但是我将相同的报文放在HttpRequester里面请求的时候却又可以拿到正常返回结果,而不是415错误。不知道有没有人跟我一样遇到过这个问题,这里记录一下解决办法。首先我们还是看下HTTP的状态码关于415返回码的说明吧。41

    2022年6月14日
    46

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号