ファイルクラス
1つは、ファイルクラスの概要です。
java.io。Fileクラスは、ファイル名とディレクトリ名の抽象表現です。、主に
用于文件和目录的创建,查找,删除,重命名文件,查询文件最近的修改时间等操作
。
コンピュータ内のJavaファイルとフォルダ(ディレクトリ)オペレーティングシステムとは関係のないFileクラスとしてカプセル化されています。
2、ファイルクラスのコンテンツ編成
1.定数
4つの静的メンバー変数:
- 1.static
String pathSeparator
、パス区切り文字Windows → ;
、Linux → :
- 2.静的
char pathSeparatorChar
、パス区切り文字Windows → ;
、Linux → :
- 3.static
String separator
、名前セパレータWindows → \
、Linux → /
- 4.static
char separatorChar
、名前セパレータWindows → \
、Linux → /
予防:
- 1.定数を使用してパス区切り文字を直接定義することはお勧めしません。スラッシュの代わりにFile.separatorを使用する(クロスプラットフォーム機能により、複数のオペレーティングシステムに適応できます)
- 2.2。pathSeparatorCharおよびpathSeparator と セパレーター文字セパレータ
文字とpathSeparatorCharseparatorCharの違い、および空の「二重引用符」の追加スターとセパレーターpathSeparator
- public static final String pathSeparator =
"" + pathSeparatorChar
;- public staticfinal文字列区切り文字=
"" + separatorChar
;
2.工法
File(String pathname):Stringは、Fileオブジェクトを作成するためのパラメーターとして使用されます。
File(String parent、String child):最初と2番目の文字列をスプライスしてFileオブジェクトを作成します。
File(File parent、String child):最初のFileオブジェクトが2番目の文字列とスプライスされてFileオブジェクトが作成されます。
File(URI uri)は、指定されたfile:URIを抽象パス名に変換することによってFileオブジェクトを作成します。
3.メンバー方式
ファイル(ディレクトリ)情報を取得する
(1)ファイルを返すgetAbsolutePathメソッド绝对路径 字符串
メソッド情報:
public String getAbsolutePath()
//创建File对象
File file = new File("D:\\我的文件\\test.txt");
//返回此File的绝对路径名字符串。
File fileAbsoluteFile = file.getAbsoluteFile();
System.out.println("文件/文件夹的绝对路径为:"+ fileAbsoluteFile);
(2)getPathメソッド、このファイル转换为 路径名 字符串
情報メソッド:
public String getPath()
ファイルクラスtoString方法
は调用的getPath方法
。
//将此File转换为路径名字符串。
String filePath = file.getPath();
System.out.println("文件/文件夹的构造路径为:" + filePath);
(3)getNameメソッドは、このファイルで表されるファイルを返します文件或目录的名称
メソッド情報:
public String getName()
が渡されましたFile对象的结尾部分
。
//返回由此File表示的文件或目录的名称。
String fileName = file.getName();
System.out.println("文件/文件夹的名称为:" + fileName);
(4)長さメソッド、ファイルサイズを取得、文件大小以字节为单位
メソッド情報:
public long length()
if the file不存在
、返回 0
;
如果File对象表示一个目录
、then返回值是不确定的
long fileLength = file.length();
System.out.println("文件/文件夹的长度(大小)为:" + fileLength);
(5)getParentメソッド、親フォルダーの名前を取得します
メソッド情報:
public String getParent()
System.out.println("父文件夹名称为" + file.getParent());
(6)CanReadメソッド、ファイルが読み取り可能かどうか。
メソッド情報:
public boolean canRead()
System.out.println("文件是否可读?" + file.canRead());
(7)CanWriteメソッド、ファイルを書き込めるかどうか
メソッド情報:
public String canWrite()
System.out.println("文件是否可写?" + file.canWrite());
(8)lastModifiedメソッド、ファイルの最終変更日を取得します
メソッド情報:
public long lastModified()
用long类型的毫秒数表示
、なぜミリ秒の値が返されるのですか?ここをクリックしてください。
System.out.println("文件最后修改日期为:" + file.lastModified());
ファイル(ディレクトリ)が存在するかどうかを確認します
(1)このファイルによって表されるファイルまたはディレクトリが実際に存在するかどうかに関係なく、Existsメソッド。
メソッド情報:
public boolean exists()
//创建对象
File dir = new File("D:\\我的文件\\");
File file = new File(dir+"test.txt");
//判断file实例是否存在
System.out.println("目录是否存在:" + dir.exists());
System.out.println("文件是否存在:" + file.exists());
(2)isDirectoryメソッド、このファイルがディレクトリを表すかどうか。
メソッド情報:
public boolean isDirectory()
//判断是文件还是目录
System.out.println("dir是文件吗?" + dir.isFile());
(3)IsFileメソッド、このファイルがファイルを表すかどうか。
メソッド情報:
public boolean isFile()
が渡されましたFile对象的结尾部分
。
//判断是文件还是目录
System.out.println("dir是目录吗?" + dir.isDirectory());
ファイルの作成(ディレクトリ)
(1)createNewFileメソッドは、この名前のファイルがまだ存在しない場合にのみ、新しい空のファイルを作成します。
メソッド情報:
public boolean createNewFile()
このメソッドに存在IOException异常
は例外処理が必要です(throws、try ... catch)
- ファイルが存在しない場合は、ファイルを作成し、trueを返し、存在する場合は上書きせずにfalseを返します。
- このメソッドはファイルのみを作成でき、フォルダは作成できません
- ファイルを作成するためのパスが存在する必要があります。存在しない場合、例外が発生します
//创建对象
File dir = new File("D:\\我的文件\\");
File file = new File(dir+"test01.txt");
//创建文件
System.out.println("是否创建:" + file.createNewFile());
(2)mkdirメソッドは、このファイルで表されるディレクトリを作成します。
メソッド情報:
public boolean mkdir()
只能创建单级空文件夹
- フォルダが存在しない場合は、作成してtrueを返します
- フォルダーが存在する場合はfalseを返し、コンストラクター内のパスが存在しない場合はfalseも返します。
//创建对象
File dir = new File("D:\\我的文件\\mkdir");
System.out.println("是否创建:"+dir.mkdir());
(3)mkdirsメソッドは、必要であるが存在しない親ディレクトリを含む、このファイルで表されるディレクトリを作成します。
メソッド情報:
public boolean mkdirs()が
利用可能です创建多级文件夹
- フォルダのみを作成できます(mkdirも(たとえば、xxx.txtはファイルではなくこの名前のフォルダのみを作成します))
//创建对象
File dir = new File("D:\\我的文件\\mkdirs");
System.out.println("是否创建:"+dir.mkdirs());
ファイル(ディレクトリ)を削除します
(1)削除方法は、このファイルで表されるファイルまたはディレクトリを削除します。
メソッド情報:
public boolean delete()
はファイルまたはフォルダーを削除できます
- ファイルまたはフォルダが正常に削除された場合はtrueを返します
- フォルダ内にファイルまたはフォルダがあり、falseを返します
- ファイルまたはフォルダのパスが存在しません。falseを返します
- この削除方法で削除されたファイルはごみ箱に移動しません
- 【注意】テスト使用を避けるためには、Windowsの「偽の削除」ではなく、重要なファイルを削除してハードディスクを直接操作することです。
//创建对象
File dir = new File("D:\\我的文件\\");
File file = new File(dir+"test.txt");
//文件的删除
System.out.println("test.java是否删除" + file.delete());
//目录的删除
System.out.println("目录是否删除" + dir.delete());