文件的简单操作
在java里,随处可见类。File类就是对文件操作的类。File的对象就代表一个文件或一个目录。下面我们要讨论的是File对文件操作的基本方法。
文件分为目录文件,标准文件和虚拟内存文件,当然我们主要是对前面两种文件进行操作。
下面我们分条细道:
1)创建对象
File(File parent, String child) 根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。
|
File(String pathname) 通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。
|
File(String parent, String child) 根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。
|
File(URI uri) 通过将给定的 file: URI 转换为一个抽象路径名来创建一个新的 File 实例。 |
上面是API中的四种构造方法。
使用较为简单 如:
File temFile = new File("D:/javastudy/测试文件101");
File temFile = new File(new File("D:\\javastudy"), "测试文件101");
File temFile = new File("D:\\javastudy", "测试文件101");
现在我们的temFile就代表了D盘下javastudy的测试文件101(不管它是否存在)。
注意到一点:在java里表示路径时,\\和/是一个含义。
2)由File对象去创建文件或文件夹
boolean |
createNewFile() 当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件。 |
static File |
createTempFile(String prefix, String suffix) 在默认临时文件目录中创建一个空文件,使用给定前缀和后缀生成其名称。 |
static File |
createTempFile(String prefix, String suffix, File directory) 在指定目录中创建一个新的空文件,使用给定的前缀和后缀字符串生成其名称。 |
举例 如:
temFile.createNewFile();
File.createTempFile("测试文件102", ".txt")
File.createTempFile("测试文件102", ".txt" ,new File "D:\\javastudy")).getAbsolutePath());
效果明显哦。
注意:当文件已经存在时 就不再会创建新的文件了。后面两个函数都是File类的静态函数,可以直接用类名调用,其返回值是File类型的。而且我们生成的文件名后面会带有比较长的随机数。
3)创建文件夹
//在当前目录下创建测试文件夹101
//mkdir()只能在已经存在的目录中创建创建文件夹。
//mkdirs()可以在不存在的目录中创建文件夹。诸如:a\\b,既可以创建多级目录。
File temFile = new File("测试文件夹222");
temFile.mkdir();
//temFile.mkdirs();
System.out.println(temFile.getAbsolutePath());
3)设置文件的属性
temFile.setReadable(false);
temFile.setWritable(true);
temFile.setReadOnly();
4)对文件属性的判断
if(subFile[i].canExecute()){
System.out.println(subFile[i].getAbsolutePath() + " 是 可执行的 ");
}
if(subFile[i].canRead()){
System.out.println(subFile[i].getAbsolutePath() + " 是 可读的 ");
}
if(subFile[i].canWrite()){
System.out.println(subFile[i].getAbsolutePath() + " 是 可写的 ");
}
if(subFile[i].isAbsolute())
System.out.println(subFile[i].getAbsolutePath() + " 是 一个绝对路径");
if(subFile[i].isDirectory())
System.out.println(subFile[i].getAbsolutePath() + " 是 一个目录");
if(subFile[i].isFile())
System.out.println(subFile[i].getAbsolutePath() + " 是 一个文件");
if(subFile[i].isHidden())
System.out.println(subFile[i].getAbsolutePath() + " 是 一个隐藏文件");
5)用于文件排序时的文件名首字母比较大小,返回值是int,为在字母表中排列的差。
//前者首字母减去后者 若果遇到的是中文首字母开头 呐结果可就大了
System.out.println(subFile[i].getAbsolutePath()+" 与 "+subFile[0].getAbsolutePath()+" 的比较结果是: "+subFile[i].compareTo(subFile[0]));
if(subFile[i].equals(subFile[0])){
System.out.println(subFile[i].getAbsolutePath()+" 与 "+subFile[0].getAbsolutePath()+" 同一个");
}
6)输出文件路径的七种方法,注意返回值
//调用File里面的各种get方法返回文件或目录路径
//七种输出路径大方式
System.out.println("用getAbsoluteFile()返回文件或目录路径所输出的结果" + subFile[i].getAbsoluteFile());
System.out.println("用getAbsolutePath()返回文件或目录路径所输出的结果" + subFile[i].getAbsolutePath());
System.out.println("用getCanonicalFile()返回文件或目录路径所输出的结果" + subFile[i].getCanonicalFile());
System.out.println("用getCanonicalPath()返回文件或目录路径所输出的结果" + subFile[i].getCanonicalPath());
System.out.println("用toString()返回文件或目录路径所输出的结果" + subFile[i].toString());
System.out.println("用subFile[i]直接返回文件或目录路径所输出的结果" + subFile[i]);
System.out.println("用getPath()返回文件或目录路径所输出的结果" + subFile[i].getPath());
7)输出文件的名字,父目录的名字
System.out.println("用getName()返回文件或目录路径的名字" + subFile[i].getName());
System.out.println("用getParent()返回文件或目录路径的父目录" + subFile[i].getParent());
System.out.println("用getParentFile()返回文件或目录路径的父目录" + subFile[i].getParentFile());
8)得到该文件或目录路径未分配的字节数,文件或目录路径所指向的分区的大小,文件或目录路径所指向的分区上课用于此虚拟机的字节数
System.out.println("用getFreeSpace()返回该文件或目录路径未分配的字节数" + subFile[i].getFreeSpace());
System.out.println("用getTotalSpace()返回文件或目录路径所指向的分区的大小" + subFile[i].getTotalSpace());
System.out.println("用getUsableSpace()返回文件或目录路径所指向的分区上课用于此虚拟机的字节数" + subFile[i].getUsableSpace());
9)得到其子目录
System.out.println("用length()函数返回文件或目录的长度" + subFile[i].length());
System.out.println("用list()函数返回文件或目录中的目录 返回值为一个String" + subFile[i].list());
System.out.println("用File中的静态函数listRoots()函数返回系统磁盘目录 返回值为一个File数组 我估计这里就应该是打印该数组的首地址" + File.listRoots());
10)对于最后一次修改时间的获得和修改
System.out.println( subFile[i] + "用lastModified()函数返回文件或目录最后一次修改的时间" + (new java.util.Date(subFile[i].lastModified())));
//修改最后一次修改时间
subFile[0].setLastModified(System.currentTimeMillis());
//获得当前时间
System.out.println(subFile[i] +"用setlastModified()函数修改时间后返回文件或目录最后一次修改的时间" + (new java.util.Date(subFile[i].lastModified())));
11)修改文件名,删除文件
//修改文件名 可以跨目录
if(temFile.renameTo(new File("D:/","NewNameFile")))
System.out.println("重命名成功啦 快去看看");
System.out.println(temFile.getAbsolutePath());
//删除文件
//如果此路径名表示一个目录,则该目录必须为空才能删除
temFile.delete();
//在虚拟机终止时删除
temFile.deleteOnExit();
结束语:通过File对象对文件或者是文件夹的操作基本上就是上面的那些啦。
相关推荐
这些基本操作是Java文件操作的基础,对于理解和处理文件系统操作至关重要。同时,了解如何处理异常(如`IOException`)也是十分重要的,这可以确保程序在遇到问题时能够优雅地处理并提供反馈。在进行文件操作时,...
FILE 文件操作是计算机编程中最基本和最重要的操作之一。 FILE 文件操作可以分为两大类:顺序文件和随机文件。顺序文件的操作是从头到尾的顺序操作,而随机文件的操作可以在文件的任意位置进行。 一、 文件操作的...
在IT行业中,文件操作是程序开发中的基础任务之一,无论是读取、写入还是处理文件,都是日常工作...理解和掌握文件操作的基本概念和技巧对于任何IT从业者都至关重要,无论是在开发应用程序、数据分析,还是系统管理中。
在Delphi编程环境中,对文本文件...总之,Delphi的TextFile操作是程序开发的基础技能,通过熟悉这些基本操作,初学者可以逐步掌握更复杂的文件处理技术。在实践中,不断学习和积累经验,你会成为处理文本文件的专家。
文件的基本操作包括: 1. **创建文件**:使用`createNewFile()`方法可以创建一个新的文件。但这仅当文件不存在时才有效,且需要确保父目录存在。 ```java if (!file.exists()) { boolean created = file....
在C#编程语言中,文件操作是至关重要的一个部分,尤其对于初学者而言,掌握基本的文件读写、创建、删除等操作是基础中的基础。本文将深入探讨C#中的文件操作,帮助你逐步理解并熟练运用这些知识。 首先,我们要知道...
在C#编程中,`File`类是System.IO命名空间中的一个核心组件,它提供了大量用于操作文件的静态方法。WindowsFile.rar中的内容可能是一个名为`WindowsFile`的自定义类,该类是对C#内置`File`类的扩展或封装,以提供更...
代码可能包含了打开、关闭、读取、写入等基本操作,以及错误处理和资源管理的代码。 “www.pudn.com.txt”可能是一个样例文件,用于演示如何在程序中读取和处理文本文件。在实际应用中,我们可能需要读取这个文件的...
在Android系统中,`File`类是用于操作文件和目录的基本工具。它是Java.io.File类的一个子类,但在Android环境中,有一些特定的注意事项和最佳实践。以下是对`File`类在Android中的使用进行的详细说明。 ### 文件...
本文将深入探讨如何在手机上进行文件操作,包括文件的创建、读取、写入以及删除等基本操作。 1. **文件的创建** 使用`File`类的构造函数可以创建一个表示文件或目录的对象。例如,`new File(String path)`用于创建...
在本项目中,"JavaFile文件操作"着重介绍了如何使用`File`类进行文件的基本操作,包括创建文件、复制文件或文件夹、删除文件或文件夹以及剪切文件或文件夹。以下是对这些功能的详细说明: 1. **创建文件** 使用`...
对于初学者来说,理解和掌握`File`类的基本用法是非常重要的,因为它是Java编程中处理文件操作的基础。 在学习过程中,可能会遇到的一个常见问题是文件或目录的权限问题,确保你有正确的访问权限来执行相应的文件...
在这个《数据结构课程设计》项目中,我们专注于二叉树的基本操作,通过两个源文件(file1.cpp 和 file2.cpp)以及一个头文件(head.h)实现了一系列的二叉树操作。以下是这些操作的详细说明: 1. **创建二叉树**:...
2. 读写文件的基本操作和注意事项。 3. 错误处理和异常安全。 4. 实例分析,展示如何将源码应用于实际场景。 最后,FILE文件操作.pdf可能是更详细的教程或者参考资料,可能会包含更深入的理论知识,如文件系统的...
这个类不仅提供了对文件的基本操作,还支持文件路径的构造和文件属性的查询。在本文中,我们将深入探讨`java.io.File`类的使用,通过实例来帮助大家巩固这一关键知识点。 首先,让我们了解`File`类的构造方法。你...
这个类提供了大量静态方法来支持对文件的基本操作,包括但不限于创建、复制、移动、删除和打开文件等。 #### 二、File类常用的操作方法详解 ##### 1. 创建文件方法 ```csharp // 参数1:要创建的文件路径 File....
### VC--文件操作函数详解 在C/C++编程中,文件操作是不可或缺的一部分,尤其是在进行数据持久化存储或从外部加载数据时。...通过这些基本的文件操作函数,可以在VC环境下实现对文件的有效管理与数据交互。
本文将深入探讨COBOL中的FILE操作,以及如何利用USING,GIVING,INPUT PROCEDURE和OUTPUT PROCEDURE指令进行文件操作,特别是与SORT相关的知识点。 首先,让我们理解COBOL中的FILE控制语句。FILE语句定义了要操作的...
对于初学者而言,理解和掌握CAA File库的基本操作是十分重要的。 #### 二、CAA File库概述 CAA File库,全称为Common Automation Architecture File Access Library,是CODESYS提供的用于文件读写的标准库之一。与...