IO流学习之File类
File类
Java文件类以抽象的方式代表文件名和目录路径名。该类主要用于文件和目录的创建、文件的查找和文件的删除等。
File对象代表磁盘中实际存在的文件和目录。就是把文件和目录转换成对象,读取到内存或者说系统中进行相应操作!
主要构建方法:
常用方法:
代码实例:
package InputOutput; import java.io.File;
import java.io.IOException; public class FileDemo {
public static void main(String[] args) throws IOException, Exception {
//指定路径
String path = "E:\\JavaCodeDemo\\InputOutput\\File\\file.txt";
File file = new File(path);
System.out.println(file);
// 测试应用程序是否可以执行此抽象路径名表示的文件。
boolean r1 = file.canExecute();
// 测试应用程序是否可以读取由此抽象路径名表示的文件。
boolean r2 = file.canRead();
// 测试应用程序是否可以修改由此抽象路径名表示的文件。
boolean r3 = file.canWrite();
// 测试此抽象路径名表示的文件或目录是否存在。
boolean r4 = file.exists();
// 创建由此抽象路径名命名的目录。父目录必须存在,不然会失败。
// 如果已经存在会创建失败
// boolean r5 = file.mkdir();
// 创建由此抽象路径名命名的目录,包括任何必需但不存在的父目录。如果父目录不存在自动创建。
// 如果已经存在会创建失败
// boolean r6 = file.mkdirs();
// 当且仅当具有该名称的文件尚不存在时,原子地创建一个由该抽象路径名命名的新的空文件。
// 父目录一定要存在才能创建成功!(就是文件夹不能缺失)
boolean r7 = file.createNewFile();
// 刪除该文件或者目录(会判断最后一个是文件还是文件夹并删除)
// boolean r8 = file.delete();
// 延迟
// new Thread().sleep(10000);
// 请求在虚拟机终止时删除由此抽象路径名表示的文件或目录。
// file.deleteOnExit();
// 返回由此抽象路径名表示的文件或目录的名称。
String name = file.getName();
// 返回此抽象路径名的父目录的路径名字符串,如果此路径名未命名为父目录,则返回 null 。
String parent = file.getParent();
// 将此抽象路径名转换为路径名字符串。
String pathName = file.getPath();
// 返回此抽象路径名的父目录的抽象路径名,如果此路径名不指定父目录,则返回 null 。
File parentFile = file.getParentFile();
// 测试这个抽象路径名是否是绝对的。
boolean r9 = file.isAbsolute();
// 测试此抽象路径名表示的文件是否为目录。
boolean r10 = file.isDirectory();
// 列出可用的文件系统根。
File[] fileList = file.listRoots();
// 在默认临时文件目录中创建一个空文件,使用给定的前缀和后缀生成其名称。这个不常用,仅作了解
File fileNull = file.createTempFile("AAAPre", "BBBNext");
// 在指定的目录中创建一个新的空文件,使用给定的前缀和后缀字符串生成其名称。
File fileNull2 = file.createTempFile("AABB", ".txt", parentFile);
//构造方法File(File parent, String child)从父抽象路径名和子路径名字符串创建新的 File实例。
File file2 = new File(parentFile,"childFile");
//构造方法File(String parent, String child)从父路径名字符串和子路径名字符串创建新的 File实例。
File file3 = new File(parent,"chileFile2"); System.out.println(r1);
System.out.println(r2);
System.out.println(r3);
System.out.println(r4);
// System.out.println(r5);
// System.out.println(r6);
System.out.println(r7);
// System.out.println(r8);
System.out.println(name);
System.out.println(parent);
System.out.println(pathName);
System.out.println(r9);
System.out.println(r10);
for (File fileName : fileList) {
System.out.println(fileName);
}
System.out.println(fileNull);
System.out.println(parentFile);
System.out.println(fileNull2);
System.out.println(file2);
System.out.println(file3);
}
}
IO流学习之File类的更多相关文章
- Java基础-IO流对象之File类
Java基础-IO流对象之File类 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.IO技术概述 回想之前写过的程序,数据都是在内存中,一旦程序运行结束,这些数据都没有了,等下 ...
- 2017.12.20 Java中的 IO/XML学习总结 File类详细
IO / XML 一.File类 1.定义/概念 Java是面向对象的语言,要想把数据存到文件中,就必须要有一个对象表示这个文件.File类的作用就是代表一个特定的文件或目录,并提供了若干方法对这些文 ...
- Java IO流中的File类学习总结
一.File类概述 File类位于java.io包中,是对文件系统中文件以及文件夹进行封装的对象,可以通过对象的思想来操作文件和文件夹. File类有多种重载的构造方法.File类保存文件或目录的各种 ...
- File类与常用IO流第一章File类
第一章:File类 一.1个重点单词: file:文件:directory:文件夹/目录:path:路径(绝对路径:absolutePath) 二.4个静态成员变量: 1.static String ...
- Java 基础(三)| IO流之使用 File 类的正确姿势
为跳槽面试做准备,今天开始进入 Java 基础的复习.希望基础不好的同学看完这篇文章,能掌握泛型,而基础好的同学权当复习,希望看完这篇文章能够起一点你的青涩记忆. 一.什么是 File 类? java ...
- 01 语言基础+高级:1-8 File类与IO流_day08【 File类、递归】
day08[File类.递归] 主要内容 File类 递归 教学目标 能够说出File对象的创建方式 能够说出File类获取名称的方法名称 能够说出File类获取绝对路径的方法名称 能够说出File类 ...
- 用IO流中的File类来创建文件及目录
题目如下: 设计一个命令窗口程序,要求按照如下的格式显示 例如:===利用命令窗口完成文件的操作===(1)创建目录 (2)创建文件 (3)删除目录 (4)删除文件 ===现在正在做创建目录的操作== ...
- Java IO流操作(III)——File类&案例一:输出制定目录下所有java文件名(包含子目录)&案例二:删除指定的目录(包含子目录)
1. File常用的构造 File file = new File("字符串路径"); File f = new File("D:\\a\\b.txt"); F ...
- JAVA.IO流学习笔记
一.java.io 的描述 通过数据流.序列化和文件系统提供系统输入和输出.IO流用来处理设备之间的数据传输 二.流 流是一个很形象的概念,当程序需要读取数据的时候,就会开启一个通向数据源的流,这个数 ...
随机推荐
- 关于JAVA中源码级注解的编写及使用
一.注解简介: 1.1.什么是"注解": 在我们编写代码时,一定看到过这样的代码: class Student { private String name; @Override ...
- Redis5.x五种数据类型常见命令
关注公众号:CoderBuff,回复"redis"获取<Redis5.x入门教程>完整版PDF. <Redis5.x入门教程>目录 第一章 · 准备工作 第 ...
- 【WPF学习】第四十七章 WriteableBitmap类
WPF允许使用Image元素显示位图.然而,按这种方法显示图片的方法完全是单向的.应用程序使用现成的位图,读取问题,并在窗口中显示位图.就其本身而言,Image元素没有提供创建和编辑位图信息的方法. ...
- Vue.js 从源码理解v-for和v-if的优先级的高低
在vue.js里面,v-for和v-if是可以一起使用作用在某个元素上,网上看到一篇文章说永远不要把v-for和v-if同时用在同一个元素上,感觉有点瞎扯,官网也注明了可以一起使用的,还把两个指令的优 ...
- 微信小程序入门笔记-审核上线(5)
1.点击上传 2.填写版本号.备注 3.https://mp.weixin.qq.com/回到微信公众平台,点击版本管理就可以看到开发版本 4.点击提交审核(提交之前填写小程序基本资料,才可提交审核) ...
- Python核心编程:《8个实践性建议》
前言 我们在用Python进行机器学习建模项目的时候,每个人都会有自己的一套项目文件管理的习惯,我自己也有一套方法,是自己曾经踩过的坑踩过的雷总结出来的,现在在这里分享一下给大家,因为很多伙伴是接触P ...
- C#在屏幕画点
Graphics类没有提供直接画点的方法,最开始想使用填充圆形区域來实现,结果发现点很大,占据了4个像素.使用起点和终点一样来划线什么也没画出.画矩形,画椭圆都没实现.最后试到填充矩形,这次成功了. ...
- instanceof读解
function instance(l,r){ let 0 = r.prototype; let v = l.__proto__; while(true){ if(v === null){ retur ...
- LeetCode 面试题 02.06. 回文链表
题目链接:https://leetcode-cn.com/problems/palindrome-linked-list-lcci/ 编写一个函数,检查输入的链表是否是回文的. 示例 1: 输入: 1 ...
- NIO学习笔记,从Linux IO演化模型到Netty—— 从BIO到epoll模型
本文不涉及具体代码,只分析Linux IO演化的心路历程,学习资料来源网络,不保证一定正确,若有错误,欢迎指出. BIO 服务端创建socket(80端口),文件描述符3号. 当线程调用accept时 ...