`
java--hhf
  • 浏览: 305445 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

File的基本操作

阅读更多

                     文件的简单操作

   在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对象对文件或者是文件夹的操作基本上就是上面的那些啦。

6
4
分享到:
评论
2 楼 ifox 2012-12-12  
不错,学习下。对于这些东西还是不太清楚
1 楼 ufopw 2012-12-12  
common-io

相关推荐

    WindowsFile.rar

    C# windows文件FileHepler操作类,封装WindowsFile操作方法,基本概括了File操作的方法

    File源码,可以熟悉File的基本操作

    自己写的C#的File代码,可以帮助初学者熟悉C#的File类,FileInfo类

    Visual C# File类常用的文件操作方法

    File类,是一个静态类,主要是来提供一些函数库用的。静态实用类,提供了很多静态的方法,支持对文件的基本操作,包括创建,拷贝,移动,删除和 打开一个文件。

    任务2、数据库与数据表的基本操作 -参考答案.sql.file

    任务2、数据库与数据表的基本操作 -参考答案.sql.file

    【2-7Hive笔记-02】Hive基本操作专题.md.file

    【2-7Hive笔记-02】Hive基本操作专题.md.file

    oracle中utl_file包读写文件操作实例学习

    在oracle中utl_file包提供了一些操作文本文件的函数和过程,学习了一下他的基本操作 1.创建directory,并给用户授权 代码如下: –创建directory create or replace directory TESTFILE as ‘/home/oracle/zxx/test’...

    C#写的基本文件操作类,创建删除读写

    VS任意版本均可使用 交大老师验证与修改的 C#写的...2.FileWriter(string file_name)是对给定文件名进行操作,OpenForRead(),OpenForWrite()等函数打开,后面的操作就都一样了。 就是基本的几个功能,学习和使用都不错

    ClearCase基本操作

    ClearCase基本操作

    DB2数据库基本操作

    DB2数据库基本操作 DB2数据库 1、Load 方法装入数据: export to tempfile of del select * from TABLENAME where not 清理条件; load from tempfile of del modified by delprioritychar replace into ...

    JAVA_file.rar_操作 文件

    java文件操作大全记录了文件的基本的操作

    C#中File类的文件操作方法详解

    静态实用类,提供了很多静态的方法,支持对文件的基本操作,包括创建,拷贝,移动,删除和打开一个文件。File类方法的参量很多时候都是路径path。File的一些方法可以返回FileStream和StreamWriter的对象。可以和他们...

    邓炜PHP基本语法(七)文件操作函数

    掌握基本文件操作函数; 学会使用常用的文件函数; 掌握如何上传文件; PHP操纵文件一般分为五步进行 1、打开一个文件以供读写 2、从文件中读取数据 3、关闭这个文件 4、执行操作 5、将写入结果输出 一、打开文件...

    MiXplorer_Silver_File_Manager_v6.50.1-Silver_build_21011711.apk

    Mi File Explorer是一个了不起的文件管理器。 MiXplorer是一款快速,流畅,美观且功能齐全的文件管理器,具有简单的用户界面。 这个程序是完全免费的,没有广告,也永远不会成为付费应用程序。 它支持Android 2.0+...

    一个简单的自动化运维脚本示例,用于管理远程服务器的基本操作,如执行命令、上传文件、下载文件等

    下面是一个简单的自动化运维脚本示例,用于管理远程服务器的基本操作,如执行命令、上传文件、下载文件等。这个脚本使用了Python语言和Paramiko库来实现SSH连接和远程操作。使用该脚本前,确保已安装Paramiko库(可...

    filemanagement-file-api提供目录和文件的访问操作接口

    文件访问接口提供基础文件IO操作能力,其具体包括用于管理文件的基本文件接口,管理目录的基本目录接口,获取文件信息的统计接口,流式读写文件的流式接口,以及文件锁接口。

    Java File 类的使用方法详解

    Java File类的功能非常强大,利用Java基本上可以对文件进行所有的操作。本文将对Java File文件操作类进行详细地分析,并将File类中的常用方法进行简单介绍,有需要的Java开发者可以看一下。  构造函数  public ...

    Java-文件操作File类

     Java中提供的文件操作类主要是File,File类既可用于表示磁盘上存在的一个普通文件,也可用于表示该普通文件所在的目录,这里主要对其构造方法和基本的常用方法进行介绍。 正文: 文件类File概述  Java中的File类...

    Hbase 基本操作类

    Hbase 基本操作类 static { //此处可以使用hbase的配置文件,也可以通过代码来实例化hbase连接 /* * Configuration HBASE_CONFIG = new Configuration(); * HBASE_CONFIG.set("hbase.zookeeper.quorum", ...

    LINUX基本操作(1)

    (二)linux基本操作实验 ① 使用ls命令浏览文件根目录,在tmp目录下建立一个临时目录,比如file_temp ② 浏览/usr目录下所有文件列表,包含隐含文件以及文件详细权限信息,区分文件和目录的区别。 ③ 用pwd命令...

    c#文件操作基类(涵盖基本操作)

    取得文件后缀名; 当文件不存时,则创建文件,并追加文件; 读取文本内容; 追加文件内容; 拷贝文件; 删除文件;...将指定文件夹下面的所有内容copy到目标文件夹下面 果目标文件夹为只读属性就会报错;...

Global site tag (gtag.js) - Google Analytics