JavaにおけるFileクラス-10-Fileクラスの取得機能

3537 ワード

次にJavaのFileクラスのメソッドを学習し、取得機能、すなわちAPIドキュメントで見られるgetxxxメソッドを学習します.主に絶対パスの取得、パスの取得、名前の取得、長さの取得、バイト数の取得、最後の変更時間、ミリ秒値の取得、指定したパスの下のすべてのファイルまたはフォルダの名前の配列の取得、指定したパスの下のファイルまたはフォルダのFile配列の取得があります.
1.絶対パスの取得
Eclipseプロジェクトのルートディレクトリの下にabcを作成する.txtとaaaフォルダ、abcを以下に示す.txtとaaaフォルダのディスクでの絶対パス、絶対パスはディスクからのパスです.
package file;

import java.io.File;

public class Demo1_File {

	public static void main(String[] args) {
		
		File file1 = new File("abc.txt");
		//         
		System.out.println(file1.getAbsolutePath());
		
		File dir1 = new File("aaa");
		System.out.println(dir1.getAbsolutePath());
	}

}

実行効果:
C:\Users\Administrator\workspace\JavaDemo\abc.txt
C:\Users\Administrator\workspace\JavaDemo\aaa


2.パスの取得
上記の絶対パスと比較すると、getPath()メソッドのデフォルト出力はファイルの相対パスです.
package file;

import java.io.File;

public class Demo1_File {

	public static void main(String[] args) {
		
		File file1 = new File("abc.txt");
		//       
		System.out.println(file1.getPath());
		
		File dir1 = new File("aaa");
		System.out.println(dir1.getPath());
	}

}

実行後の出力:
abc.txt
aaa

3.名前getName()の取得
これがファイルやフォルダの名前です
package file;

import java.io.File;

public class Demo1_File {

	public static void main(String[] args) {
		
		File file1 = new File("abc.txt");
		//       
		System.out.println(file1.getName());
		
		File dir1 = new File("aaa");
		System.out.println(dir1.getName());
	}

}

実行:
abc.txt
aaa

4.バイト長(個数)の取得
これはabc.txtは点の内容を書いて、この取得の長さは中の文字の個数を統計します.
package file;

import java.io.File;

public class Demo1_File {

	public static void main(String[] args) {
		
		File file1 = new File("abc.txt");
		//       
		System.out.println(file1.length());
		
	}

}

こちらから7つ印刷しましたabcです.txtは勝手にいくつかの英語のアルファベットを書いた.
5.最終変更時間の取得
フォルダまたはファイルの最後の変更時間を取得できます.
package file;

import java.io.File;

public class Demo1_File {

	public static void main(String[] args) {
		
		File file1 = new File("abc.txt");
		//             
		System.out.println(file1.lastModified());
		File dir = new File("aaa");
		System.out.println(dir.lastModified());
		
	}

}

実行します.印刷されるのは1970年1月1日0時0分0秒からファイルの変更までの時間のミリ秒値です.
1530977356336
1530805106868

この修正時間をフォーマットに変更したい場合は、Dateクラスの方法で実現できます.バックグラウンドシステムでは、ファイルの最後の修正時間がこのように得られていることがわかります.
6.指定したパスの下にあるファイルの名前配列を取得する
たとえば、CディスクProgram Fileというレイヤーの下にあるファイルとフォルダの名前の配列を取得したいです.
package file;

import java.io.File;

public class Demo1_File {

	public static void main(String[] args) {
		
		File file1 = new File("C:\\Program Files");
		String[] arr = file1.list();
		
		for (String string : arr) {
			System.out.println(string);
		}
	}

}

実行印刷は、あなた自身のCディスク下のProgram Files下のフォルダの名前です.
7.指定したパスの下にあるファイルオブジェクトを取得する
これは、指定したパスを取得したファイル名の配列とは異なり、ファイルオブジェクトの配列を取得します.
package file;

import java.io.File;

public class Demo1_File {

	public static void main(String[] args) {
		
		File file1 = new File("C:\\Program Files");
		File[] files = file1.listFiles();
		
		for (File file : files) {
			System.out.println(file);
		}
	}

}

実行後、ファイルの絶対パスが印刷されます.実は私たちはファイルオブジェクトを取得していません.上にはファイルクラスがtoStringメソッドを書き換えたばかりなので、デフォルトの印刷ファイルの絶対パスは、もちろんファイルオブジェクトを取得してから、ファイルがファイルかフォルダか、ファイルサイズなどを判断するなど、他のことをすることができます.