初识IO流
输入输出流,用来进行设备之间的数据传输。
是我们IO传输的数据是以文件的形式体现的,所以Java给我们提供了一个类,Flie用来描文件和目录
File(File parent, String child)
根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。
File(String pathname)
通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。
File(String parent, String child)
根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。
File()
上面三个构造方法,用来封装一个文件或目录
路径:
绝对路径:带有盘符号的而详细路径
相对路径:不带有盘符号的路径,项目文件夹的根目录
creatNewFile()
创建文件
返回值的的意思是返回值是否创建成功
第一次创建该文件时,创建成功返回true
第二次创建该文件时,重复创建返回false
mkdirs()
创建单级或者多级目录
第一次创建该文件时,创建成功返回true
第二次创建该文件时,重复创建返回false
delete()
删除文件或目录
先把文件封装起来 然后再删除 删除不走回收站
返回值代表是否删除成功
第一次删除该文件时,删除成功返回true
第二次删除该文件时,重复删除返回false(因为第一次删除后找不到文件了)
删除多级目录
delete()不能直接删除多级目录,如果想要删除多级目录,可以使用递归来递归删除
renameTo()
重命名文件
renameTo(fire1);这个方法有两个功能,一个可以重命名,一个可以剪切
重命名:传入的这个新文件,和旧文件的路径一致,只是文件名不一样了,就会重命名
剪切:传入的这个新文件,和旧文件的路径不一致,就会把旧文件剪切走
public class MyTest {
public static void main(String[] args) {
File file1 = new File("abc.txt");
boolean b = file.renameTo(file1); //返回值是否重名成功
System.out.println(b);
File file2 = new File("abc.txt");
File file3 = new File("E:\\abc.txt");
file2.renameTo(file3);
}
}
与判断相关的方法
isFile()
判断是否是文件
返回值是false就是目录,返回值是ture就是文件
isDirectory
判断是否是目录
返回值是false就是文件,返回值是ture就是目录
canRead()
判断是否可读
canWrite()
判断是否可写
isHidden()
判断 是否隐藏
canExecute()
Linux下判断文件是否可执行
isAbsolut()
判断是否是绝对路径
exists()
判断文件或目录是否存在
与获取相关的方法
length()
获取文件的长度,获取的是文件的字节数
getName()
获取文件名
getParent()
获取文件的父路径,返回的是字符串形式
String parent = file.getParent();
System.out.println(parent);
File parentFile = file.getParentFile();
String s = parentFile.toString();
获取文件的父路径,返回的是File类型,更加灵活
String parent = file.getParent();
System.out.println(parent);
File parentFile = file.getParentFile();
String s = parentFile.toString();
getAbsolute
获取文件的绝对路径,返回的是File形式,更加灵活
File absoluteFile = file.getAbsoluteFile()
获取文件的绝对路径,返回的是字符串形式
String absolutePath = file.getAbsolutePath();
System.out.println(absoluteFile.toString());
System.out.println(absolutePath);
getPath()
获取相对路径
getTotolspace()
获取磁盘的总大小
返回值是long类型,单位是字节
getFreespace()
获取磁盘的剩余容量
//获取已用容量:getTotolspace()-getFreespace();
lastModified()
获取文件的最后一次修改时间 单位是毫秒值
初识IO流的更多相关文章
- 初识IO流之小型资源管理器
初次接触到IO流,根据书本上的知识,加上自己的摸索,发现了一些好玩的事情.(书本上的知识或多或少,有时候不足以解决我们的问题!这时候我们就应该自己去求解!!! 所以我们学习的时候要抱有探索的精神,求知 ...
- Java学习 · 初识 IO流
IO流 1. 原理与概念 a) 流 i. 流动,流向 ii. 从一端移动到另一端 源头到目的地 iii. 抽象.动态概念,是一连 ...
- 初识io流条件状态
一 流状态 C++中的输入输出系统负责记录每一个输入输出操作的结果信息,这些当前的状态信息被包含在io_state类型的对象中.io_state是一个枚举类型(就像open_mode一样),以 ...
- Java基础之IO流
很长时间都没有更新了,最近在补充JavaSE的一些细节部分 关于IO流的一些总结 首先要介绍的是File类,File类用于对文件和目录的一些操作 1.创建文件CreateNewFile() 2.对文件 ...
- Java中IO流,输入输出流概述与总结
总结的很粗糙,以后时间富裕了好好修改一下. 1:Java语言定义了许多类专门负责各种方式的输入或者输出,这些类都被放在java.io包中.其中, 所有输入流类都是抽象类InputStream(字节输入 ...
- Java:IO流与文件基础
Java:IO流与文件基础 说明: 本章内容将会持续更新,大家可以关注一下并给我提供建议,谢谢啦. 走进流 什么是流 流:从源到目的地的字节的有序序列. 在Java中,可以从其中读取一个字节序列的对象 ...
- java IO流详解
流的概念和作用 学习Java IO,不得不提到的就是JavaIO流. 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...
- IO流总结
IO流的作用:用于设备和设备之间的数据传输. IO流的概念:流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象. IO流的分类: 按照操作数据的类型分为两种: 字节流和字符流. 按 ...
- IO流
流的概念和作用 学习JavaIO,不得不提到的就是JavaIO流. 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输特 ...
随机推荐
- 函数式编程—函数的关系—is-a、has-a、use-a
is-a:函数的实现与函数类型的关系: has-a:匿名(闭包)函数的创建者与匿名函数的关系:匿名函数与环境和上下文(函数)的关系: use-a:高阶函数与参量函数的关系: 函数式编程的基本功之一就是 ...
- Spring Data:CrudRepository接口使用详情
CrudRepository中的方法 save(entity):添加一条数据 save(entities):添加多条数据entities为集合 findOne(id):根据id查询一条数据 exist ...
- rushjs来自微软的单体仓库管理工具
rushjs 是来自微软的单体仓库管理工具 ,与lerna 类似但是使用上稍显复杂 安装 npm install -g @microsoft/rush 简单使用 一个传统的基于npm 的处理 ~$ ...
- Ubuntu下手动安装vscode
Ubuntu下手动安装vscode1.下载vscodewget https://vscode.cdn.azure.cn/stable/553cfb2c2205db5f15f3ee8395bbd5cf0 ...
- 何时使用 django 以及何时不用?
选择一种语言和框架,因为你在上一个项目中使用了它或者因为你更熟悉它,但是这不是正确的方法. 项目启动 在开始一个新的软件项目之前,您需要评估哪种语言和框架最适合您所期望的结果.什么对你最重要?安全性. ...
- js中的逗号运算符
逗号运算符 逗号运算符是二元运算符,它的操作数可以是任意类型.它首先计算左操作数,然后计算右操作数,最后返回右操作数的值,用逗号运算符可以在一条语句中执行多个运算 作用: 1.在一条语句中从左到右执行 ...
- CentOS 7 上 安装 jira
步骤 .安装jdk8 https://www.cnblogs.com/sea-stream/p/10404360.html .安装mysql wget -i -c http://dev.mysql.c ...
- IO多路复用之Reactor
参考文档: http://blog.csdn.net/u013074465/article/details/46276967 https://www.cnblogs.com/ivaneye/p/573 ...
- select多选左移右移的实现
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- [Beta阶段]第二次Scrum Meeting
Scrum Meeting博客目录 [Beta阶段]第二次Scrum Meeting 基本信息 名称 时间 地点 时长 第二次Scrum Meeting 19/05/03 大运村寝室6楼 40min ...