首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

java:File.deleteOnExit()实现分析塈用于多级目录时的讲究

删除文件,很好理解,结束的时候这个文件自动被删除;但是对于目录,我们知道,目录是可以层层嵌套的,对于一个有多级子目录的File对象?如何确保使用deleteOnExit被准确删除呢?...java.nio.ByteBuffer; import java.nio.channels.FileChannel; public class CopyUtils{ /** * NIO方式复制文件...但当我实际运行时,发现包含子目录的文件夹,在JVM结束时并没被删除,该文件夹下所有的子目录都没有删除,而子目录下的文件都被删除了。 这是为什么呢?...(添加)到待删除列表中 files中, // 因为 files 是java.util.LinkedHashSet类型的哈希表,没有重复数据, // 所以重复添加无效 static...,是调用deleteOnExit方法的相反的顺序进行的。

1.3K20
您找到你想要的搜索结果了吗?
是的
没有找到

java IO(File类、字节流与字符流、字节字符转换流)

public boolean exists() 普通 判断文件是否存在 public boolean delete() 普通 删除文件 public boolean isDirectory() 普通...流 在程序中所有的数据都是以流的方式进行传输或保存的,程序需要数据的时候要使用输入流读取数据,而当程序需要将一些数据保存 起来的时候,就要使用输出流完成。.../ out.close() ; // 此时,没有关闭 } }; 以上的内容,没有输出任何的内容,也就是说,所有的内容都是保存在了缓冲区之中...在所有的硬盘保存文件或是进行传输的时候都是以字节的方式进行的。...包括图片也是字节完成,而字符只有在内存中才会形成。所以在开发中使用字节的操作是较多的。

1.1K50

JAVA IO流

创建文件 创建文件使用的是File类,这里具体的话有三种方式。三种方式使用的是同一种方法,使用其实三种方式都大同小异,接下来依次看看。...()); } } 这里因为没有文件中写入内容,所以文件大小为0 删除文件 使用 的是file.delete(Filename)方法,具体demo如下 import java.io.File;...删除目录同删除文件相同,使用的是File.delete方法,但它只能删除空目录,所以在删除前需先清除文件 package org.example; import java.io.File; import..."Delete Successfully":"Delete failed"); } } IO流分类 按照操作数据单位不同分为:字节流和字符流 字节流(8bit,适用于二进制文件) 字符流(字符...如果没有输入可用,则此方法将阻塞。 指定者: 类 InputStream 中的 read 返回: 下一个数据字节;如果已到达文件末尾,则返回 -1。

18120

Java transient关键字使用小记

因为使用这种方式时多个异常间必须是平级关系。也就是这多个异常处理方式需一致(实际开发中,好多时候可能就是针对同类型的问题,给出同一个处理)。...编译器强制调用者必须处理 异常注意事项: A:子类重写父类方法时,子类的方法必须抛出相同的异常或者父类 异常的子类 B:如果父类抛出多个异常,子类重写父类时,只能抛出相同的异常或者是父类 异常的子集,且子类不能抛出父类没有的异常...:public boolean delete():删除此抽象路径名表示的文件或目录。..._介绍.avi 分析: A:封装目录 B:获取该目录下所有的文件的File数组 C:遍历该File数组,得到每一个File对象 D:拼接一个新的名称,然后重命名即可 import java.io.File...需求:把E:\JavaSE目录下所有的java结尾的文件的绝对路径给输出在控制台。

1.8K20

【云+社区年度征文】深入理解--Android Loader

深入理解--Android Loader 开发 漫品 客户端 本地图书导入页面 的过程中,需要获取到手机目录中所有的txt文件进行展示用于提供给的用户进行 如果使用Java读取目录,目前想到的是递归的方式进行文件获取...您的代码删除对加载器数据的任何引用。 此接口一般由您的 Activity 或片段实现,并在您调用 initLoader() 或 restartLoader() 时进行注册。...获取媒体库中所有的书籍文件(手机中所有的.txt文件) 源码地址: https://github.com/AnyMarvel/ManPinAPP 路径 app/src/main/java/com/mp/...*/ public class MediaStoreHelper { /** * 获取媒体库中所有的书籍文件 * * 暂时只支持 TXT *...= null) { resultCallback.onResultCallback(files); } } } 以上是漫品 客户端加载本地文件方式,欢迎有更好方式的童鞋留言

66241

Java字节流与字符流的区别

此时没有关闭字节流操作,但是文件中也依然存在了输出的内容,证明字节流是直接操作文件本身的。而下面继续使用字符流完成,再观察效果。...程序运行后会发现文件没有任何内容,这是因为字符流操作时使用了缓冲区,而在关闭字符流时会强制性地将缓冲区中的内容进行输出。...在字符流的操作中,所有的字符都是在内存中形成的,在输出前会将所有的内容暂时保存在内存之中,所以使用了缓冲区暂存数据。...在回答之前,先为读者讲解这样的一个概念,所有的文件在硬盘或在传输时都是以字节的方式进行的,包括图片等都是字节的方式存储的,而字符是只有在内存中才会形成,所以在开发中,字节流使用较为广泛。...字节流是最基本的,所有的InputStream和OutputStream的子类都是,主要用在处理二进制数据,它是字节来处理的。

71010

深入理解--Android Loader

开发 漫品 客户端 本地图书导入页面 的过程中,需要获取到手机目录中所有的txt文件进行展示用于提供给的用户进行 如果使用Java读取目录,目前想到的是递归的方式进行文件获取,但获取过程其实是比较缓慢的...您的代码删除对加载器数据的任何引用。 此接口一般由您的 Activity 或片段实现,并在您调用 initLoader() 或 restartLoader() 时进行注册。...获取媒体库中所有的书籍文件(手机中所有的.txt文件) 源码地址: https://github.com/AnyMarvel/ManPinAPP 路径 app/src/main/java/com/mp/...*/public class MediaStoreHelper { /** * 获取媒体库中所有的书籍文件 * * 暂时只支持 TXT *...= null) { resultCallback.onResultCallback(files); } }} 以上是漫品 客户端加载本地文件方式,欢迎有更好方式的童鞋留言

75220

Java基础19(02)总结IO流,异常try…catch,throws,File类

package cn.itcast_03; import java.io.File; import java.io.IOException; /* * 删除功能:public boolean delete...删除功能:我要删除ccc这个文件夹 File file4 = new File("aaa\\bbb\\ccc"); System.out.println("delete:" + file4.delete...()); // 删除功能:我要删除aaa文件夹 // File file5 = new File("aaa"); // System.out.println("delete:" + file5.delete...; import java.io.FilenameFilter; /* * 判断E盘目录下是否有后缀名为.jpg的文件,如果有,就输出此文件名称 * A:先获取所有的,然后遍历的时候,依次判断,如果满足条件就输出...a:先获取所有的,在遍历的时候判断,再输出 判断E盘目录下是否有后缀名为.jpg的文件,如果有,就输出此文件名称 package cn.itcast_08; import java.io.File

84050

File 类与文件操作

为此,Java 专门提供了File类来实现这一目标 “文件”的英文名称是file,将首字母大写变成File,就是java,io包中的一个类,它是Object的直接子类,功能是以抽象方式表示文件和目录...原因是有的操作统可能将大写字母变成小写,如果设置为小写可以保证在所有系统中都一样)。不要认为File类对象所代表的文件、目录一定存在。...答案: file1 表示的是文件dir1表示的是目录,由此可知,文件与目录的表示并没有太大差别。 “\”特殊字符表示的是转义字符,若要表示字符“\”本身,需用“\\” 来实现。...所以,程序第一次运行时,显示文件找不到信息,并创建一个新文件。第二次运行时,输出了新建文件的信息。不过,该文件没有内容,长度为0....,返回大小 return file.length(); }else{//若是目录,用循环方式累计子目录和文件占用空间 String[] childFilePathName

70070

Java IO流经典练习题

(十三)查看D盘中所有的文件文件夹名称,并且使用名称升序降序,文件夹在前和文件夹在 后,文件大小排序等。...("/", "\\").toLowerCase())) { return; } // 复制文件(包括文件文件夹)操作 // 先获取所有的文件(包括文件文件夹...* 3.这里有三重排序:首先是要按是否是文件夹来排序,然后名称来排序,最后大小来排序 * 其实这里还是会有问题的,按照某一个排序还没事,但是三个都排序就不一定有效!...,当然很多题目的解决方法不是固定的, 但是对于基本的解题方式还是要了解的。...对于知识点的掌握的话, 文件的基本操作,读取文件的基本方法,和写文件的基本方法都是要掌握的, 还有字节流的读取和字符流的读取方式和用处也要会区分。

62710

开心档之Java 流(Stream)、文件(File)和IO

2protected void finalize()throws IOException {} 这个方法清除与该文件的连接。确保在不再引用文件输入流时调用 close 方法。...2protected void finalize()throws IOException {} 这个方法清除与该文件的连接。确保在不再引用文件输入流时调用 close 方法。...下面的例子创建 "/tmp/user/java/bin"文件夹:CreateDir.java 文件代码:import java.io.File; public class CreateDir {...README 是一个文件index.html 是一个文件include 是一个目录----删除目录或文件删除文件可以使用 java.io.File.delete() 方法。...以下代码会删除目录 /tmp/java/,需要注意的是当删除某一目录时,必须保证该目录下没有其他文件才能正确删除,否则将删除失败。

45220

开心档之Java 流(Stream)、文件(File)和IO

2 protected void finalize()throws IOException {} 这个方法清除与该文件的连接。确保在不再引用文件输入流时调用 close 方法。...2 protected void finalize()throws IOException {} 这个方法清除与该文件的连接。确保在不再引用文件输入流时调用 close 方法。...下面的例子创建 "/tmp/user/java/bin"文件夹: CreateDir.java 文件代码: import java.io.File; public class CreateDir {...README 是一个文件 index.html 是一个文件 include 是一个目录 ---- 删除目录或文件 删除文件可以使用 java.io.File.delete() 方法。...以下代码会删除目录 /tmp/java/,需要注意的是当删除某一目录时,必须保证该目录下没有其他文件才能正确删除,否则将删除失败。

25210

Java实现word文档在线预览,读取office(word,excel,ppt)文件

想要实现word或者其他office文件的在线预览,大部分都是用的两种方式,一种是使用openoffice转换之后再通过其他插件预览,还有一种方式就是通过POI读取内容然后预览。...一、使用openoffice方式实现word预览 主要思路是: 1.通过第三方工具openoffice,将word、excel、ppt、txt等文件转换为pdf文件 2.通过swfTools将pdf文件转换成...二、利用jodconverter(基于OpenOffice服务)将文件转化为html格式或者pdf格式(不成熟): package org.pan.poi.poi; import java.io.File...* //p1.setIndentationHanging(400);//---首行前进,指定的缩进量,通过第一行回到开始的文本流的方向上移动缩进从父段的第一行中删除。...* 如果省略此属性,则应假定值为零。

37.5K91
领券