zoukankan      html  css  js  c++  java
  • Java IO学习2:File类

     

    在整个IO包了,唯一表示与文件本身有关的类就是File类。使用File类可以进行1创建或删除文件等常用操作。要想使用File类。则首先要观察File类的构造方法,此类的常用构造方法如下所示:

    public File(String pathname)  实例化File类的时候,必须设置好路径

    No.

    方法或常量

    类型

    描述

    1

    public static final String pathSeparator

    常量

    表示路径的分隔符(windows是“;”)

    2

    public static final String separator

    常量

    表示路径的分隔符(windows是“\”)

    3

    public File(String pathname)

    构造

    创建File类对象,传入完整路径

    4

    public boolean createNewFile()throws IOException

    普通

    创建新文件

    5

    public boolean delete()

    普通

    删除文件

    6

    public boolean exists()

    普通

    判断文件是否存在

    7

    public boolean isDirectory()

    普通

    判断给定的路径是否在一个目录

    8

    public long length()

    普通

    返回文件的大小

    9

    public String[] list()

    普通

    列出指定目录的全部内容,只是名称

    10

    public File[] listFiles()

    普通

    列出指定目录的全部内容,会有路径

    11

    Public Boolean mkdir()

    普通

    创建一个目录

    12

    Public Boolean renameTo(File dest)

    普通

    为已有的文件重命名

    实例操作一:创建一个新文件

    在D盘创建一个test.txt文件

    复制代码
     1 import java.io.File;
    2 import java.io.IOException;
    3
    4 public class Test1 {
    5 public static void main(String[] args) {
    6 File f=new File("d:"+File.separator+"test.txt");//为增加可移植性,建议使用File.separator
    7 try {
    8 f.createNewFile();
    9 } catch (IOException e) {
    10 e.printStackTrace();
    11 }
    12 }
    13 }
    复制代码


    实例操作二:删除一个指定文件

    删除刚刚创建的test.txt文件

    复制代码
     1 import java.io.File;
    2
    3 public class Test2 {
    4 public static void main(String[] args) {
    5 File f=new File("d:"+File.separator+"test.txt");
    6 if(f.exists()){//判断文件存不存在,如不存在就不用删除了
    7 f.delete();
    8 }
    9 }
    10 }
    复制代码

    实例操作三:综合创建,删除文件的操作

    给定一个路径,如果此文件存在,则删除,如果不存在,则创建

    复制代码
     1 import java.io.File;
    2 import java.io.IOException;
    3
    4 public class Test3 {
    5 public static void main(String[] args) {
    6 File f=new File("d:"+File.separator+"test.txt");
    7 if(f.exists()){
    8 f.delete();
    9 }else{
    10 try {
    11 f.createNewFile();
    12 } catch (IOException e) {
    13 e.printStackTrace();
    14 }
    15 }
    16 }
    17 }
    复制代码

    实例操作四:创建一个文件夹

    使用mkdir()方法创建一个文件夹

    复制代码
    1 import java.io.File;
    2
    3 public class Test4 {
    4 public static void main(String[] args) {
    5 File f=new File("d:"+File.separator+"test");
    6 f.mkdir();//创建文件夹
    7 }
    8 }
    复制代码

    实例操作五:列出指定目录的全部文件

    如果现在给出了一个目录,则可以直接列出目录中的内容。但是列出的方法在File类中存在两个:

    • 以字符串数组的形式返回:public String[] list()
    • 以File数组的形式返回:public File[] listFiles()

    操作一:使用list()列出全部内容

    复制代码
     1 import java.io.File;
    2
    3 public class Test5 {
    4 public static void main(String[] args) {
    5 File f=new File("d:"+File.separator);
    6 String[] str=f.list();
    7 for(String s:str){
    8 System.out.println(s);
    9 }
    10 }
    11 }
    复制代码

    以上列出了全部的名字,包括文件夹得名字和文件的名字。

    操作二:使用listFiles()列出

    复制代码
     1 import java.io.File;
    2
    3 public class Test6 {
    4 public static void main(String[] args) {
    5 File f=new File("d:"+File.separator);
    6 File[] files=f.listFiles();
    7 for(File file:files){
    8 System.out.println(file);
    9 }
    10 }
    11 }
    复制代码

    以上列出了完全路径。

    实例操作六:判断一个给定的路径是否目录

    给定路径,判断是否是目录

    复制代码
     1 import java.io.File;
    2
    3 public class Test7 {
    4 public static void main(String[] args) {
    5 File f=new File("d:"+File.separator);
    6 if(f.isDirectory()){
    7 System.out.println(f.getPath()+"是目录");
    8 }else{
    9 System.out.println(f.getPath()+"不是目录");
    10 }
    11 }
    12 }
    复制代码

    实例操作七:列出指定目录的全部内容

    如果给定了一个目录,则要求把此目录中的全部文件都列出来,包括子文件夹下的文件

    复制代码
     1 import java.io.File;
    2
    3 public class Test8 {
    4 public static void main(String[] args) {
    5 File f = new File("d:" + File.separator);
    6 print(f);
    7 }
    8 public static void print(File f) {
    9 if (f != null) {
    10 if (f.isDirectory()) {
    11 File[] files = f.listFiles();
    12 if (files != null) {
    13 for (File file : files) {
    14 print(file);
    15 }
    16 }
    17 } else {
    18 System.out.println(f);
    19 }
    20 }
    21 }
    22 }
    复制代码


    总结:

    1. File类是在java.io包中唯一与文件本身有关的
    2. 可以使用File类创建、删除等常见的文件操作
    3. 在使用File类指定路径的时候一定要注意操作系统间的差异,尽量使用separator进行分割
    Face your past without regret. Handle your present with confidence.Prepare for future without fear. keep the faith and drop the fear. 面对过去无怨无悔,把握现在充满信心,备战未来无所畏惧。保持信念,克服恐惧!一点一滴的积累,一点一滴的沉淀,学技术需要不断的积淀!
  • 相关阅读:
    安装VMWare tools 及安装后/mnt中有hgfs但没共享文件的解决办法
    linux挂载命令
    RHEL7/CentOS7 Network Service开机无法启动的解决方法
    linux消息队列编程实例
    Linux进程间通信——使用消息队列
    消息队列函数
    ipcs查看消息队列命令
    linux批量删除
    HTTP 请求消息头部实例:
    drf 序列化组件
  • 原文地址:https://www.cnblogs.com/200911/p/2705332.html
Copyright © 2011-2022 走看看