java中File

来源:互联网 发布:北京电脑数据恢复公司 编辑:程序博客网 时间:2024/06/05 14:54

(JAVA)File

1.在Java中,只有File类能表示一个文件,所有用File表示一个文件。

2.File的属性就是文件的路径,虚拟机会根据File类的参数找到制定的文件。找到文件后可以用File类的方法进行操作。

3.文件和目录都是通过File来操作的,File能删除、新建和重命名文件和目录,File不能访问文件内容本身,如果需 要访问文件内容本身,需要使用输入、输出流。 

4.File对象用来获取或处理与磁盘文件相关的信息,例如权限,时间,日期和目录路径等。

5.File浏览子目录层次结构,很多程序中文件是数据的根源和目标。

a.File的list()方法可以,返回一个字符串数组,这些字符串指定此抽象路径表示目录中的文件和目录。

这是提供给没有JAVA文档的人,网络上找到的网址----File文档


创建方法

1.boolean createNewFile() 不存在返回true 存在返回false

2.boolean mkdir() 创建目录

3.boolean mkdirs() 创建多级目录
判断方法

删除方法

1.boolean delete()文件删除

2.boolean deleteOnExit() 文件使用完成后删除

1.boolean canExecute()判断文件是否可执行
2.boolean canRead()判断文件是否可读
3.boolean canWrite() 判断文件是否可写
4.boolean exists() 判断文件是否存在


5.boolean isDirectory() 判断目录是否存在(一定要是目录,跟上面有点区别)
6.boolean isFile() 判断文件是否存在
7.boolean isHidden() 判断隐藏性
8.boolean isAbsolute()判断是否是绝对路径 文件不存在也能判断

获取方法

1.String getName() 获取名称
2.String getPath() 获取路径
3.String getAbsolutePath() 返回此抽象路径名的绝对路径名字字符串
4.String getParent() 如果没有父目录返回null
5.long lastModified() 获取最后一次修改的时间
6.long length() 文件长度
7.boolean renameTo(File f)
8.File[] liseRoots() 获取机器盘符
9.String[] list()
10.String[] list(FilenameFilter filter)


-——————————————————以下是各种方法————————————————————————

创建文件与删除文件

</pre><pre name="code" class="java">import java.io.File;import java.io.IOException;public class FileDeleteCreate {    public static void main(String[] args){        File f =new File("d:\\one.txt");//文件位置        try {            System.out.println(f.createNewFile());//当文件存在时返回false//这里是创建一个文件,不是文件目录            System.out.println(f.delete());//当文件不存在时返回false//删除文件        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();//异常时,<span style="color: rgb(51, 51, 51); font-family: arial; font-size: 13px; line-height: 20.02px;">在命令行打印异常信息在程序中出错的位置及原因</span>        }    }}

列出磁盘下的文件和文件夹

import java.io.File;public class FileSearch{<span style="white-space:pre"></span>public static void main(String[] args) {<span style="white-space:pre"></span>String str = "C:\\";<span style="white-space:pre"></span>File f = new File(str);<span style="white-space:pre"></span>fun(f);<span style="white-space:pre"></span>}<span style="white-space:pre"></span>// 要不断列出,因为给出的File类对象可能是一个目录<span style="white-space:pre"></span>public static void fun(File f) {<span style="white-space:pre"></span>// 判断给定的路径是否是目录,如果是目录在列出<span style="white-space:pre"></span>if (f.isDirectory()) {<span style="white-space:pre"></span>File[] file = f.listFiles();<span style="white-space:pre"></span>// 再依次循环进行判断<span style="white-space:pre"></span>try {<span style="white-space:pre"></span>for (int i = 0; i < file.length; i++) {<span style="white-space:pre"></span>// 继续把内容传入到fun方法之中进行验证<span style="white-space:pre"></span>fun(file[i]);<span style="white-space:pre"></span>}<span style="white-space:pre"></span>} catch (Exception e) {<span style="white-space:pre"></span>}<span style="white-space:pre"></span>} else {<span style="white-space:pre"></span>System.out.println(f);<span style="white-space:pre"></span>}<span style="white-space:pre"></span>}}<strong></strong>
只列出文件夹里有什么文件夹

import java.io.File;public class FileFolder {public static void main(String[] args) {File f = new File("D:\\a");// 使用list列出// 列出的只是文件夹而已String[] str = f.list();for (int i = 0; i < str.length; i++) {System.out.println(str[i]);}}}

移动文件".java"移动到C盘jad目录下

import java.io.File;public class FileMove{public static void main(String[] args) {File f1 = new File("d:\\");moveFile(f1);}/*文件移动*/public static void moveFile(File dir) {File[] files = dir.listFiles();for (File file : files) {if (file.isDirectory())moveFile(file);else {if (file.getName().endsWith(".java"))//文件后缀file.renameTo(new File("c:\\jad\\" + file.getName().substring(0, file.getName().lastIndexOf('.')) + ".jad"));}}}}



1 0