JAVASE——File类

前書き

ファイルディレクトリのパス名ファイルまたはディレクトリのパス名の抽象表現は、4つの主要なファミリとは何の関係もありません。

注意点:

  1. Fileクラスは4つの主要なファミリとは関係がないため、Fileクラスはファイルの読み取りと書き込みを完了できません。
  2. Fileオブジェクトは何を表していますか?ファイル名とディレクトリパス名の抽象表現。c:\DriversこれはFileオブジェクトです。c:\Drivers\Lan\Realtek\Readme.txtこれもFileオブジェクトです。Fileオブジェクトはディレクトリまたはファイルに対応する場合があります。

実装コード

ファイルが存在するかどうかを確認します

   File f1=new File("D:\\file");
 System.out.println(f1.exists());

ここに画像の説明を挿入します

つまり、ディスクDのルートディレクトリにファイルファイルがありません。

ファイルとして作成

  if(!f1.exists()){
    
    
            f1.createNewFile();
        }

ここに画像の説明を挿入します

ディレクトリとして作成

  if(!f1.exists()){
    
    
            f1.mkdir();
}

ここに画像の説明を挿入します

補足

複数のディレクトリ(つまり、D:\ file \ file1 \ file2 \ file3)の形式で新しいものを作成します。

 f1.mkdirs();

親パスを取得する方法

最初

ファイルの親パスを取得します1:

  		
            String parentPath=f1.getParent();
            System.out.println(parentPath);

ここに画像の説明を挿入します

二番目

  				File parentFile =f1.getParentFile();
            	System.out.println("获取绝对路径:"+parentFile.getAbsolutePath());

ここに画像の説明を挿入します

絶対パスを取得する方法

package File;


import java.io.File;

/*
* 1.File 类和四大家族没有关系,所以File类不能完成文件的读写
* 2.File对象代表什么?
*   文件和目录路径名的抽象表示形式
*   c:\Drivers  这是一个File对象
*   c:\Drivers\Lan\Realtek\Readme.txt  这也是一个File对象
*   一个File对象有可能对应的是目录,也可能是文件
* */
public class FileTest01 {
    
    
    public static void main(String[] args)throws  Exception {
    
    

        File f1=new File("D:\\file");

        //如果D:\file不存在,则以文件的形式创建出来
        if(!f1.exists()){
    
    
       //     f1.createNewFile();
        }
       //如果D:\file不存在,则以目录的形式创建出来
        if(!f1.exists()) {
    
    
            f1.mkdir();
        }
          
            File f4=new File("copy");
            System.out.println("获取绝对路径:"+f4.getAbsolutePath());

    }
}

ここに画像の説明を挿入します

ファイル名を取得する

 File f1=new File("copy");
//获取文件名
System.out.println("文件名:"+f1.getName());

ここに画像の説明を挿入します

それがディレクトリであるかどうかを確認します。

 File f1=new File("copy");
 System.out.println(f1.isDirectory());

ここに画像の説明を挿入します

それがファイルであるかどうかを判別します。

 File f1=new File("copy");
 System.out.println(f1.isFile());

ここに画像の説明を挿入します

ファイルの最終変更時刻を取得します

  File f1=new File("copy");
  long haomiao=f1.lastModified();//这个毫秒是从1970年到现在的总毫秒数

        //将总毫秒数转换成日期
        Date time=new Date(haomiao);
        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS") ;
        String  strTime   =sdf.format(time);
        System.out.println(strTime);

ここに画像の説明を挿入します

ファイルサイズを取得する

  File f1=new File("copy");
  System.out.println(f1.length());

ここに画像の説明を挿入します
ここに画像の説明を挿入します

ファイルの名前を変更します

 File f1=new File("copy");
 File f2=new File("copy1");
  f1.renameTo(f2);

実行前

ここに画像の説明を挿入します

実行後

ここに画像の説明を挿入します

注:renameTo関数を呼び出すには、元のファイル名前を使用する必要があります

現在のディレクトリの下にあるすべてのサブディレクトリを取得します(強調)

現在のディレクトリの下にあるすべてのサブディレクトリを取得します

 File[] listFiles()
        File f=new File("src");

        File[]files=f.listFiles();

        for(File file:files){
    
    
            System.out.println(file.getAbsolutePath());

ここに画像の説明を挿入します
ここに画像の説明を挿入します

おすすめ

転載: blog.csdn.net/CSNN2019/article/details/114381066