Java中IO知识部分(一)File类的介绍
程序员文章站
2022-06-09 21:09:51
...
Java中IO知识部分(一)
1.学习概要:
IO这部分知识需要掌握3个部分
- 需要熟悉抽象类
- 重点掌握5个类和一个借口(File,outinputStream,inputStream,Writer,Reader)和一个接口(Serializedable)
- 需要掌握2个
- 掌握2个代码模型
2.介绍几个类
File 类
File类是jjava.io包中唯一一个和文件本身操作有关的程序类。
File的基本使用
1.File的创建
File中File()构造方法使用,创建File对象 File file= new File(“文件路径名”);
注:一般情况下路径分隔符使用一个File类中常量解决(为了保证在window和Unix2种操作系统中同时可以使用代码)public static final String separator
2.File中文件的创建
File中createNewFile()构造方法使用创建File对象
3.查询文件是否存在的方法
file.exists()
4.删除文件
file.delete();
小结:查询一个文件是否存在,如果存在则删除文件,如果不存在则创建文件。实现代码如下:
import java.io.File;
import java.io.IOException;
public class TestDemo {
public static void main(String[] args) throws Exception {
File file=new File("d:"+File.separator+"hello.txt");
if(file.exists())
{
file.delete();
}
else{
file.createNewFile();
}
}
注:由于此方法是对同一个文件的创建与删除,所以会用延迟的情况产生。产生延迟的原因在于,用File类进行文件的创建实际要调用一个FileSystem的抽象方法,而不用的操作系统有不同JVM FileSystem(如windowsFileSystem),此方法会去调用本地操作系统的方法,所以导致整个过程有延迟。为了避免情况的出现,只需要加入Thread.sleep(233);方法,但是实际开发中对同名的文件操作是在不同文件夹中实现的,(创建和删除方法放在不同文件下)就可避免。
创建目录的操作
方法背景:
由于每一个创建和查找文件不可能每一个都是从根目录下的,有可能有子目录出现,子文件夹嵌套子文件夹,以上方法就实现不了此类操作。
解决方法:
1.首先取得父路径,public File getParentFile()返回是父文件,判断是否存在
2.然后创建目录,public boolean mkdirs()方法(最好用mkdirs()因为有多个子目录)
3.然后再创建文件。
代码如下:
import java.io.File;
import java.io.IOException;
public class TestDemo {
public static void main(String[] args) throws Exception {
File file=new File("d:"+File.separator+"abc"+File.separator+"bcd"+File.separator+"hello.txt");
if(!file.getParentFile().exists())
{
file.getParentFile().mkdirs();
}
{if(file.exists())
{
file.delete();
}
else{
file.createNewFile();
}}
}
上一篇: Java SE IO详解
下一篇: JAVA 中BIO,NIO,AIO的理解