java-file类 hei
File类
/*
java.io.File类
文件和目录轮径的抽象形式
java把电脑种的文件和文件夹,封装为一个file类,我们可以使用file类对文件和文件夹进行曹祖
使用File类的方法
创建一个文件/文件夹
删除文件/文件夹
获取文件/文件夹
判断文件夹/文件是否存在
对文件夹进行遍历
获取文件的大小
File类是一个于系统无关的类,任何操作系统都可以使用这个类中的方法 重点:
file:文件
directory 文件夹/目录
path:路径 灵活写路径:
"C:"+File.separator+"quan"+File.separator+“config.com" */
import java.io.File; public class DemoFile {
public static void main(String[] args) { /*
static String pathSeparator 与系统相关的路径分隔符字符,为方便起见,表示为字符串。
static String separator 与系统相关的默认名称 - 分隔符字符,以方便的方式表示为字符串。
*/
String pathSeparator = File.pathSeparator;
System.out.println(pathSeparator);//路径分隔符 win; linux: String sepatator = File.separator;
System.out.println(sepatator);// 结果\ 文件名称分隔符 win\ linux /
}
}
绝对路径,相对路径:
/*
路径:
绝对路径:一个完整的路径
C:\\Users\\quan\\Desktop\\untitled1\\src\\quan\\File\\Demo2.java
相对路径:一个简化的路径
src\\quan\\File\\Demo2.java
相对路径指当前项目的根目录 注意:
路径是不区分大小写的
路径中的文件名称分割符window使用反斜杠,反斜杠是转移字符,所以需要两个
*/
FIle类的三种构造方法:
11111
/*
File(String pathname)
通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。
string pathname 字符串路径名称
可以以文件结尾,也可以以文件夹结尾
可以相对路径,可以绝对路径
路径可以存在,也可以不存在
创建file对象,只把字符串路径封装为FIle对象,不考虑路径的真假情况
*/
public static void show01(){
File f1 = new File("C:\\Users\\quan\\Desktop\\untitled1\\src\\quan\\File\\Demo2.text");
System.out.println(f1);
/*
//结果:C:\Users\\quan\\Desktop\\untitled1\\src\\quan\\File\Demo2.text
//重写了Object toString方法
/
*/ File f2 = new File("C:\\Users\\quan\\Desktop\\untitled1\\src\\quan\\File");
System.out.println(f2); File f3 = new File("src\\quan\\File\\Demo2.java");
System.out.println(f3); }
22222
/*
File(String parent, String child)
从父路径名字符串和子路径名字符串创建新的 File实例
更加灵活使用
*/
public static void show2 (String parent,String child){
File file = new File(parent,child); }
3333
/*
File(File parent, String child)
从父抽象路径名和子路径名字符串创建新的 File实例。
注意父路径的类型为FIle,可以使用file方法对路径进行一些操作,在使用路径创建对象 */
public static void show3(){
File parent = new File("c:\\");
File file = new File(parent,"quan.txt");
System.out.println(file);//c:\quan.txt }
常用方法
获取的方法
11111
/* public String getAbsolutePath(),返回次File的绝对路径字符串
获取构造方法总传递的路径
无论路径是绝对路径还是相对路径,都是返回绝对路径
*/
public static void show1 (){
File f1 = new File(" C:\\Users\\quan\\Desktop\\untitled1\\src\\quan\\File\\Demo2.java");
String str1 = f1.getAbsolutePath();
System.out.println(str1); File f2 = new File("src\\quan\\File\\Demo2.java");
String str2 = f2.getAbsolutePath();
System.out.println(str2);
}
/*
放回置:
C:\Users\quan\Desktop\untitled1\src\quan\File\Demo2.java
C:\Users\quan\Desktop\untitled1\src\quan\File\Demo2.java */
22222
/*
public String getPath()获取构造的方法,返回原始的路径字符串,是什么样就是什么样
toString方法的重写就是使用gePath去实现
*/
public static void show2(){
File f1 = new File(" C:\\Users\\quan\\Desktop\\untitled1\\src\\quan\\File\\Demo2.java");
File f2 = new File("src\\quan\\File\\Demo2.java"); String s1 = f1.getPath();
String s2 = f2.getPath(); System.out.println(s1);
System.out.println(s2); System.out.println(f1.toString()); }
/*
C:\Users\quan\Desktop\untitled1\src\quan\File\Demo2.java
src\quan\File\Demo2.java
*/
3333
/*
public Sting getName:返回构造方法中的论据字符串的结尾部分,可文件可目录
*/
public static void show3(){
File f1 = new File(" C:\\Users\\quan\\Desktop\\untitled1\\src\\quan\\File\\Demo2.java");
File f2 = new File("src\\quan\\File\\Demo2.java"); String s1 = f1.getName();
String s2 = f1.getName(); System.out.println(s1);
System.out.println(s2); }
4444
/*
public Long length():返回文件的长度:
注意:
亿字节为单位
文件夹是没有大小概念的,不能获取文件夹的大小
如果构造方法中的路径不存在,那里length方法返回0
*/
public static void show4(){
File f1 = new File("C:\\Users\\quan\\Desktop\\交给辅导员\\宿舍人员合照\\大二2.jpg");
//不存在的文件
File f2 = new File("C:\\Users\\quan\\Desktop\\untitled1\\src\\quan\\File\\Demo2.text");
//文件夹
File f3 = new File("C:\\Users\\quan\\Desktop\\All\\Java-done");
Long le1 = f1.length();
Long le2 = f2.length();
Long le3 = f3.length(); System.out.println(le1);
System.out.println(le2);
System.out.println(le3); }
/*
1139179
0
0
*/
判断功能
/*
public boolean exists():此file表示文件或目录是否实际存在
public boolean isDirectory() 此file表示的是否是目录
public boolean isFile()此File表示是否为文件
*/
public static void show01(){
File f1 = new File("C:\\Users\\quan\\Desktop\\untitled1\\src\\quan\\File\\Demo2.java");
System.out.println(f1.exists()); File f2 = new File("C:\\Users\\quan\\Desktop\\untitled1\\src\\quan\\File\\Demo2.text");
System.out.println(f2.exists()); File f3 = new File("untitled1.iml");//以项目根目录src
System.out.println(f3.exists()); }
/*
true
false
true
*/
/*
public boolean isDirectory() 此file表示的是否是目录
判断构造方法给定的路径是否以文件结尾
public boolean isFile()此File表示是否为文件 注意:这两个方法互斥,且路径必须存在,否则都返回false
*/
public static void show02(){
File f1 = new File("C:\\Users\\quan\\Desktop\\untitled1\\src\\quan\\File\\Demo2.java");
System.out.println(f1.isDirectory());
System.out.println(f1.isFile());
File f2 = new File("C:\\Users\\quan\\Desktop\\untitled1\\src\\quan\\File\\Demo2.text");
//判断是文件还是文件夹的时候最好先判断是否存在
if (f2.exists()){
System.out.println(f2.isFile());
}
}
/*
false
true
*/
创建删除功能的方法
/*
public boolean createNewFile():
当且仅当具有改名称的文件不存在时,创建一个新的空文件
创建文件的路径何名称在FIle的构造方法中给出
返回:true:文件不存在,创建文件,返回true
false 文件存在,不会创建,返回false
注意:
此方法只能创建文件,不能创建文件夹
创建文件的路径必须存在,否则会抛出异常 这个方法本来声明抛出了IOException,我们调用这个方法,就必须处理这个异常
要么trows,要么trycatch
*/
public static void show() throws IOException {
File f1 = new File("C:\\Users\\quan\\Desktop\\untitled1\\src\\quan\\File\\Demo2.text");
boolean b1 = f1.createNewFile();//会出现IO异常
System.out.println(b1); File f2 = new File("src\\quan\\File\\Demo3.text");//这个才是相对这个项目的相对路径
boolean b2 = f2.createNewFile();//会出现IO异常
System.out.println(b2); }
}
/*
public boolean mkdir():创建FIle表示的目录,只能创建单极文件夹
public boolean mkdirs():创建此File表示目录,包括任何必须但不存在的目录
返回:true:文件夹不存在,创建文件,返回true
false 文件夹存在,不会创建,返回false,构造方法给出的路径不存在,返回false */
public static void show1(){
File f1 = new File("C:\\Users\\quan\\Desktop\\untitled1\\src\\quan\\File\\QQQ2");
boolean b1 = f1.mkdir();//会出现IO异常
System.out.println(b1); File f2 = new File("C:\\Users\\quan\\Desktop\\untitled1\\src\\quan\\File\\111\\2222\\3");
boolean b2 = f2.mkdirs();//会出现IO异常
System.out.println(b2);
}
/*
public boolean delete() 删除由FIle表示的问题件或目录
此方法,可以删除构造方法路径钟给出的文件/文件夹
返回True :文件/文件夹删除成狗
false:文件夹钟由内容,不会删除返回false,构造方法路径不存在fasle
注意:
delete方法是直接在硬盘上删除,不经过回收站
*/
public static void show2(){
File f1 = new File("C:\\Users\\quan\\Desktop\\untitled1\\src\\quan\\File\\QQQ2");
boolean b1 = f1.delete();
System.out.println(b1); File f2 = new File("C:\\Users\\quan\\Desktop\\untitled1\\src\\quan\\File\\111\\2222\\3");
boolean b2 = f2.delete();
System.out.println(b2);
}
目录的遍历
public static void show2(){
File f1 = new File("C:\\Users\\quan\\Desktop\\untitled1\\src\\quan\\File");
String[] b1 = f1.list();
for (String name:b1
) {
System.out.print(name+" ");
//111 CreateDelete.java Demo2.java Demo2.text Demo3.java Demo3.text Demo4.java DemoFile.java QQQ
} }
public static void show2(){
File f1 = new File("C:\\Users\\quan\\Desktop\\untitled1\\src\\quan\\File");
File[] b1 = f1.listFiles();
for (File name:b1
) {
System.out.println(name); }
/*
C:\Users\quan\Desktop\untitled1\src\quan\File\111
C:\Users\quan\Desktop\untitled1\src\quan\File\CreateDelete.java
C:\Users\quan\Desktop\untitled1\src\quan\File\Demo2.java
C:\Users\quan\Desktop\untitled1\src\quan\File\Demo2.text
C:\Users\quan\Desktop\untitled1\src\quan\File\Demo3.java
C:\Users\quan\Desktop\untitled1\src\quan\File\Demo3.text
C:\Users\quan\Desktop\untitled1\src\quan\File\Demo4.java
C:\Users\quan\Desktop\untitled1\src\quan\File\DemoFile.java
C:\Users\quan\Desktop\untitled1\src\quan\File\QQQ
*/ }
java-file类 hei的更多相关文章
- Java File类总结和FileUtils类
Java File类总结和FileUtils类 文件存在和类型判断 创建出File类的对象并不代表该路径下有此文件或目录. 用public boolean exists()可以判断文件是否存在. Fi ...
- Java File 类的使用方法详解
Java File类的功能非常强大,利用Java基本上可以对文件进行所有的操作.本文将对Java File文件操作类进行详细地分析,并将File类中的常用方法进行简单介绍,有需要的Java开发者可以看 ...
- Java File 类的使用方法详解(转)
转自:http://www.codeceo.com/article/java-file-class.html Java File类的功能非常强大,利用Java基本上可以对文件进行所有的操作.本文将对J ...
- Java File类 mkdir 不能创建多层目录
File f = new File("/home/jp/Upload"); if ((!f.exists()) || (!f.isDirectory())) {boolean re ...
- Java File类基础解析 1
Java File类基础解析 1 File类的构造方法 public File(String pathname) :通过给定的路径名字符转换为抽象路径名来创建新的File实例 String path ...
- Java File类基本操作
我们可以利用Java.io.File类对文件进行操作,基本操作如下: 1)创建文件: public boolean createNewFile() throws IOException 2)删除文件: ...
- JAVA File类 分析(三)
前面两篇与大家一起研究了unix下的文件系统,本篇将和大家一起分析 文件的属性和文件夹. ok,废话不说,先来段代码 #include <stdio.h> #include <sys ...
- Java——File类概述
body, table{font-family: 微软雅黑} table{border-collapse: collapse; border: solid gray; border-width: 2p ...
- Java——File类成员方法
body, table{font-family: 微软雅黑} table{border-collapse: collapse; border: solid gray; border-width: 2p ...
- java File类的基本使用
package com.soar.file; import java.io.File; import java.io.IOException; public class Demo2_FileMetho ...
随机推荐
- WAF、IDS、IPS
WAF:https://blog.csdn.net/gufenchen/article/details/93485351 IDS:https://blog.csdn.net/coldeye/artic ...
- word隐写
通过打开word选项中显示中的显示隐藏文字即可解决word隐写的问题
- 实力再获认可!Smartbi入选爱分析·产业数字化厂商全景报告
近日,中国独立的第三方产业数字化研究与咨询机构--爱分析发布<2021爱分析·产业数字化厂商全景报告>.思迈特软件凭借优秀的解决方案能力及丰富的业务实践经验,入选报告中银行数字化.保险数字 ...
- mysql设置定时任务-渐入佳境
--作者:飞翔的小胖猪 --创建时间:2021年2月26日 前言 mysql中设置定时任务,需要先打开调度才能实现自动执行任务.调度功能开启后过再配合存储过程或事件等组件实现特定或定时的任务实现. 步 ...
- shell中echo基础及高级用法详解-渐入佳境
--作者:飞翔的小胖猪 --创建时间:2021年2月19日 1.1 基础用法 echo命令用来输出文本,在shell脚本中用来输出提示信息用的比较多. 单引号:原样输出所有的内容,不用转义就能输出特殊 ...
- GPT-3被超越?解读低能耗、高性能的GlaM模型
原创作者 | LJ GLaM: Efficient Scaling of Language Models with Mixture-of-Experts https://arxiv.org/pdf/2 ...
- C++_Leecode20有效的括号
一.题目介绍 1.题目描述 给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效. 有效字符串需满足: 左括号必须用相同类型的右括号闭合. 左括号必须以正 ...
- 图解|从根上彻底理解MySQL的索引
这是图解MySQL的第4篇文章,这篇文章会让你 明白什么是索引,彻底理解B+树和索引的关系: 彻底理解主键索引.普通索引.联合索引: 了解什么是HASH索引,InnoDB和MyISAM索引的不同实现方 ...
- java 注释与标识符
JAVA基础 注释与标识符 注释 书写注释是一个非常好的习惯 三种注释: 单行,多行,文档 .单行 ://注释 .多行:/* 注释 / .文档** 注释 */ 标识符 1. 关键字 2.标识符注意点 ...
- PHP防止订单超卖,秒杀,限购,PHP高并发防止超卖代码实践
建表 1.订单表 CREATE TABLE `order` ( `id` int(11) NOT NULL AUTO_INCREMENT, `order_sn` varchar(45) NOT NUL ...