Java的File类是一个用于进行文件操作的类。
File位于Java的java.io包下,我们可以通过它来进行诸如文件的创建,删除,以及对文件的判断等。
通常我们所说的文件基本分为三种:
文件,文件夹,内存虚拟文件
我们在Java中一般只是讨论前面两类,不涉及虚拟的内存文件。
File类里面我们一般要使用的就是一些重要的重要的构造器和方法,
我们创建一个File类的实例,其初始化值就意味着加载待处理的相应文件(或目录)。
方法中我们用到最多的一般有:
boolean exist()
boolean isDictionary()
boolean isFile()
long length()
File[] listFIles()
他们都是一般的方法使用
下面我举一个例子:
我们可以使用File类来创建目录,创建目录有两个方法:
1. objDir.mkDir(); 返回一个boolean表示创建成功与否,只能在已有目录下创建(子目录)
2. objDir.mkDirs();返回一个boolean表示创建成功与否,即使父目录不存在也能够创建。例如:当 File objDir = new File(“ hehe/dir ”); 表示在当前相对目录下再创建两级目录hehe/dir,这时使用mkDirs()方法才行,而mkDir()方法失败。注意:如果new File(“/hehe/dir”);表示从当前盘符的根目录(D:/)创建,由于这个根目录总是存在的,所以mkDir()方法也能创建成功,却往往不是我们所要的结果。
创建了目录就可以创建文件了,如果在不存在的目录下创建文件会抛出异常。
objFile. createNewFile ();返回一个boolean表示创建成功与否,这样就创建了一个空文件:D:/XP/test/filename.txt
下面可以查看文件的名称、大小、路径、父目录、可读可写状态、判断文件是否存在、是否是一个目录或是文件、获取文件最后修改的时间、修改文件名,删除文件或目录等。
方法名如下:
System.out.println("绝对路径:" + objFile.getAbsolutePath());
System.out.println("相对路径:" + objFile.getPath());
System.out.println("父目录:" + objFile.getParent());
System.out.println("是否可读:" + objFile.canRead());
System.out.println("是否可写:" + objFile.canWrite());
System.out.println("文件长度:" + objFile.length());
//要使用文件所在的目录来取里面的list,再通过循环来进行处理
System.out.println("所在目录文件列表:" + (int) (objDir.list().length));
System.out.println("文件名:" + objFile.getName());
System.out.println("文件存在否:" + objFile.exists());
System.out.println("文件删除成功否:" + objFile.delete());
注:要删除一个目录objDir.delete();必须要目录为空才行,如果目录不为空,可以使用objDir.list()获取当前目录下的文件列表String[],循环将其中的文件删除后继而删除目录
分享到:
相关推荐
本文将重点探讨`File`类中的`delete()`方法,并通过实例演示如何正确使用该方法来删除文件和目录。 #### 二、File类简介 `File`类位于`java.io`包中,用于封装一个特定的文件或目录路径。通过实例化`File`对象,...
在Java编程中,处理Excel文件是一项常见的任务,特别是在数据导入导出、数据分析或者报表生成等场景。本篇文章将深入探讨如何使用Java实现Excel文件的上传和读取,重点关注`MultiFile`转换为`File`以及处理多Sheet页...
在"filegdb_api_vs2013_1_4"中,重点包含以下知识点: 1. **Visual Studio 2013兼容性**:此版本的API是为在Microsoft Visual Studio 2013环境下编译和构建应用而设计的。这意味着它遵循VS2013的编译标准和库依赖,...
本篇文章将重点讲解如何使用Java读取NetCDF文件以及生成等值线的实现方法,主要涉及两个关键库:netcdf-4.3.22.jar和wContour.jar。 首先,`netcdf-4.3.22.jar`是Unidata开发的Java NetCDF库,它提供了全面的功能来...
最后,"visualvm"是一个Java性能分析工具,TDA提供了与其集成的插件,使得用户可以在VisualVM中直接使用TDA的功能。 在提供的压缩包文件中,我们看到有以下几个关键文件: 1. `net-java-dev-tda.nbm`:这是...
《JAVA程序设计案例教程》是一本深入探讨...通过分析源码,你可以深入了解Java的类设计、网络编程、多线程、异常处理、数据库操作以及文件I/O等核心概念,这将极大地提升你的编程能力并为未来项目开发打下坚实基础。
在Java中解析PDF文件是一项常见的任务,特别是在处理用户提交的文档、数据分析或自动化报告等场景下。本篇文章将深入探讨如何使用Java来解析PDF文件,并提供一个实际的示例。 Java解析PDF主要依赖于第三方库,如...
在Java编程中,读取Excel文件的内容是一项常见的任务,尤其在数据处理、报表生成或数据分析等领域。Excel文件通常包含表格数据,而Java提供多种库来处理这类任务,比如Apache POI、JExcelApi和OpenCSV等。本篇将重点...
6. **Java I/O**:书中可能会介绍Java的输入输出系统,如File类、BufferedReader和FileWriter等,用于文件读写和流操作。 7. **网络编程**:Java提供了丰富的网络编程API,如Socket和ServerSocket,读者可以学习...
Java中的File类和FileInputStream/FileOutputStream类是进行此类操作的基础。此外,可能还使用了Scanner类来进行用户输入的读取,PrintWriter类或BufferedWriter类进行文件写入。 【压缩包子文件的文件名称列表】:...
根据提供的标题、描述以及部分上下文内容,我们可以深入探讨Java中进行文件读写操作的不同方法,并对其进行比较分析。本文将重点介绍几种常见的用于文件读写的API,并解释它们之间的区别。 ### 一、Java中文件读写...
在Java编程中,工具类是开发者经常会用到的一种代码组织形式,它们通常包含了一些通用的功能方法,可以提高代码的复用性和可维护性。本篇文章将深入探讨名为`ComUtils.java`的压缩包文件,它是一个Java工具类,用于...
在案例中,针对zookeeper内存使用率100%且GC无法释放的问题,MAT的`Leak Analysis`显示大部分内存被`Leader`类的`observingLearners`占用,因此重点应该放在zookeeper的observer模式上。Observer模式是zookeeper为...
在Java编程环境中,读取Excel文件是一项常见的任务,特别是在数据处理和分析的场景下。这里我们将探讨如何使用Java实现这一功能,重点是介绍压缩包中的`jxl.jar`库,这是一个用于读写Excel文件的第三方库。 首先,...
它利用了Java提供的缓冲流类`BufferedInputStream`和`BufferedOutputStream`来自动管理缓冲区,使得程序员无需手动管理缓冲区的细节。 ```java import java.io.*; public class BufferStreamCopy { public static...
Java提供了丰富的I/O库,如File类、InputStream和OutputStream等,考生应掌握如何读写文件、如何进行网络通信等。历年真题中可能包含读写文件、数据序列化等实践性的题目。 此外,集合框架是Java编程中的一个重要...
Java编程语言是软件开发领域广泛使用的工具,尤其在软件设计师的考试中,它的重要性不言而喻。这个压缩包文件“软件设计师历年Java程序代码”集合了过去多年的考试题目中的Java源代码,对于准备参加软件设计师考试的...
另外,Java的输入输出流(I/O)和文件操作也可能在项目实例中体现,如File类的使用、数据的序列化与反序列化、网络通信的Socket编程等。这在处理数据读写和实现跨进程通信时至关重要。 除此之外,源码可能包含对Java ...
- **应用程序名**:通常在`<application>`标签下的`android:label`属性中找到,但也可以有自定义的标签,需具体分析。 ```java String appName = doc.getElementsByTagName("application").item(0).getAttributes...
接下来,我们将重点分析`PrinterDemo.java`的部分源码: ```java public class PrinterDemo extends JFrame { private static final long serialVersionUID = 1L; private PageFormat pageFormat; private ...