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 ...
随机推荐
- HashMap常用方法(简版)
HashMap继承自Map,是一个散列表,它的存储形式是键-值对,键值对的类型可以不一样,这是它相较数组方便的一点. 1.put()方法 哈希表.put(key,value): 该方法用于将键值对加入 ...
- python的字符串切片技术
听说过python的字符串切片技术吗?是不是听着超高级的?实际上,也不用想得太难,python的字符串切片技术就是将字符串的某些字符提取出来而已~ 字符串切片 字符串是一种序列类型,可以按序号访问其中 ...
- pycharm创建模板
用pycharm构造作者模板 模板,就是创建一个文件时自动生成模板内容. 这里用pycharm创建作者模板,步骤如下: File-->Settings Editor-->File and ...
- win7重装系统过程关机 电脑开机黑屏 硬盘无法识别 无法使用u盘启动
问题:win7重装系统中强制重启导致硬盘无法识别,开机后无法选择使用u盘启动盘启动,电脑黑屏,将硬盘拆掉可以使用u盘启动,使用SATA转接口在win7中有反应但无法识别 无法识别原因:重装系统过程中断 ...
- C#基于Redis实现分布式锁
[本博客属于原创,如需转载,请注明出处:https://www.cnblogs.com/gdouzz/p/12097968.html] 最近研究库存的相关,在高峰期经常出现超卖等等情况,最后根据采用是 ...
- QT ——TCP接收到的数据出现乱码情况
这个项目是写一个利用TCP来传输.bin的并文件,接收端是将接收到的.bin并文件直接在串口助手中进行读取. 但是从读取的结果来看发现传输过来得数据是错误的,与原数据不相符,由于服务端是直接对并文件在 ...
- SQL Server--一个存储过程对同一个字段执行两种Update
需求: 服务器程序被界面点击"置零"按钮后,所有未完成的任务的状态都置为异常结束. 但分两种情况: 0<=Status<40状态为未完成的任务1,其异常结束状态为50 ...
- winform中更新UI控件的方案介绍
这是一个古老的话题...直入主题吧! 对winfrom的控件来说,多线程操作非常容易导致复杂且严重的bug,比如不同线程可能会因场景需要强制设置控件为不同的状态,进而引起并发.加锁.死锁.阻塞等问题. ...
- springboot----四、yaml配置注入
四.yaml配置注入 4.1.配置文件 SpringBoot使用一个全局的配置文件 , 配置文件名称是固定的 application.properties 语法结构 :key=value applic ...
- linux su、sudo、sudo su、sudo -i的用法和区别
sudo : 暂时切换到超级用户模式以执行超级用户权限,提示输入密码时该密码为当前用户的密码,而不是超级账户的密码.不过有时间限制,Ubuntu默认一次时长15分钟. su : 切换到某某用户模式,提 ...