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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • bwapp之sql注入_sql注入语句入门

    bwapp之sql注入_sql注入语句入门步骤下面简要介绍手工注入(非盲注)的步骤。1.判断是否存在注入,注入是字符型还是整数型2.猜解SQL查询语句中的字段数(orderby)3.确定显示的字段顺序4.获取当前数据库(爆库)5.获取数据库中的表(爆表)6.获取表中的字段名(爆字段)7.下载数据(爆数据)0x01SQLInjection(GET/Search)…

    2022年9月23日
    1
  • 网页游戏开发入门教程一(webgame+design)

    网页游戏开发入门教程一(webgame+design)网页游戏开发入门教程一(webgame+design) 一、简单的程序框架。webgame程序构成:三大部分。第一是数据流程。第二是程序。第三是美术。其中,数据流程包括了功能。也只有在功能中才能体现数据流程。数据流程相当的麻烦,后面再讨论。比如最简单的卖买产品。要实现这个功能。那么需要有产品基础表、产品详细表、商店表、背包表。如果扩展性更强,相应

    2022年5月2日
    53
  • 机器学习算法——线性回归(超级详细且通俗)

    机器学习算法——线性回归(超级详细且通俗)通俗理解线性回归回归分析什么是回归分析呢?这是一个来自统计学的概念。回归分析是指一种预测性的建模技术,主要是研究自变量和因变量的关系。通常使用线/曲线来拟合数据点,然后研究如何使曲线到数据点的距离差异最小。例如,存在以下数据然后我们拟合一条曲线f(x):回归分析的目标就是要拟合一条曲线,让图中红色线段加起来的和最小。线性回归(简介)线性回归是回归分析的一种。假设目标值(因变量)与特征值(自变量)之间线性相关(即满足一个多元一次方程,如:f(x)=w1x1+…+wnxn+b.)。然后构

    2022年8月21日
    10
  • 华为防火墙usg6000配置dhcp(华为交换机与防火墙互联配置)

    该场景,防火墙作为出口访问internet,然后接的傻瓜式交换机来连接下面的办公PC,属于一个简单的SOHO环境,一般在防火墙上面应用DHCP,也通常是这种情况,大点的环境则是交换机或者专门的DHCP服务器来做。1、防火墙初始化配置2、DHCP配置(基于全局的配置方式)3、防火墙策略+NAT配置,让下面PC能够访问Internet。4、测试1、防火墙初始化配置…

    2022年4月12日
    1.4K
  • blend基础_blender入门

    blend基础_blender入门http://wenku.baidu.com/view/eca9ec7301f69e31433294b5.html

    2025年6月16日
    2
  • javalist集合转换数组_集合对象转数组

    javalist集合转换数组_集合对象转数组问题描述:对于给定的如下数组,如何转换成List集合?String[]array={"a","b","c"};参考stackoverflow总结如下几种写法:1.使用原生方式,拆分数组,添加到ListList&lt;String&gt;resultList=newArrayList&lt;&gt;(array.length);for(Strings:ar…

    2022年8月23日
    7

发表回复

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

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