Java – File class

Java ֆայլ դասը ներկայացնում է ֆայլերը և ֆայլի ուղիները աբստրակտ ձևով: Այս դասը օգտագործվում է ֆայլերի և դիրեկտորիաների ստեղծման, ֆայլերի որոնման, ֆայլերի ոչնչացման համար և այլն:

File object (ֆայլի օբյեկտը) ներկայացնում է փաստացի ֆայլը/դիրեկտորիան սկավառակի մեջ։ Ստորև ներկայացվում են File object ստեղծելու կոնստրուկտորների ցանկը։

Sr.No.

Method & Description

1

File(File parent, String child)

Այս կոնստրուկտորը ստեղծում է նոր ֆայլի օրինակ`ծնողական աբստրակտ ուղղուց և դուստր տողից:

2

File(String pathname)

Այս կոնստրուկտորը ստեղծում է նոր ֆայլի օրինակ վերծանելով տրված ուղիների տողը աբստրակտ ուղու:

3

File(String parent, String child)

Այս կոնստրուկտորը ստեղծում է նոր ֆայլի օրինակ`ծնողական աբստրակտ ուղղու տողից և դուստր տողից:

4

File(URI uri)

Այս կոնստրուկտորը ստեղծում է նոր ֆայլի օրինակ վերծանելով տրված ֆայլը URI-ը աբստրակտ ուղղու։

Երբ  File object արդեն պատրաստ է, առկա են օգնական մեթոդներ, որոնք կարող են օգտագործվել ֆայլի հետ տարատեսակ գործողություններ կատարելու համար:

Sr.No.

Method & Description

1

public String getName()

Վերադարձնում է այս աբստրակտ ուղիով նշված ֆայլի կամ դիրեկտորիայի անունը:

2

public String getParent()

Վերադարձնում է այս աբստրակտ ծնողական ուղղու տողի անունը, կամ եթե այդ ուղին չի նշում ծնողական դիրեկտորիան:

3

public File getParentFile()

Վերադարձնում է այս աբստրակտ ծնողական ուղղու տողի անունը, կամ 0 եթե այդ ուղին չի նշում ծնողական դիրեկտորիան:

4

public String getPath()

Վերածում է աբստրակտ ուղղին տողի։

5

public boolean isAbsolute()

Ստուգում է, թե արդյոք այս աբաստրակտ ուղին բացարձակ (absolute) է, թե ոչ: Վերադարձնում է true, եթե այս աբստրակտ ուղին բացարձակ(absolute) է, հակառակ դեպքում՝ false։

6

public String getAbsolutePath()

Վերադարձնում է աբստրակտ ուղղու բացարձակ (absolute) ուղղու տողը։

7

public boolean canRead()

Ստուգում է, թե արդյոք հավելվածը կարող է կարդալ աբստրակտ ուղղու նշված ֆայլը, թե ոչ։ Վերադարձնում է true, եթե այս նշված ֆայլը գոյություն ունի և հանարվոր է կարդալ հավելվածի օգնությամբ, հակառակ դեպքում՝ false։

8

public boolean canWrite()

Ստուգում է, թե արդյոք հավելվածը կարող է փոփոխել աբստրակտ ուղղու նշված ֆայլը, թե ոչ։ Վերադարձնում է true, եթե ֆայլային համակարգը պարունակում է նշված ֆայլը և հավելվածը թույլատրություն ունի գրել այս ֆայլում, հակառակ դեպքում՝ false։

9

public boolean exists()

Ստուգում է, թե արդյոք աբաստրակտ ուղղու նշված ֆայլը կամ դիրեկտորիան գոյություն ունի, թե ոչ: Վերադարձնում է true, եթե այս աբստրակտ ուղղու կողմից նշված ֆայլը կամ դիրեկտորիան գոյություն ունեն, հակառակ դեպքում՝ false։

10

public boolean isDirectory()

Ստուգում է, թե արդյոք աբաստրակտ ուղղու նշված ֆայլը դիրեկտորիա է, թե ոչ: Վերադարձնում է true, եթե այս աբստրակտ ուղղու կողմից նշված ֆայլը գոյություն ունի և դիրեկտորիա է, հակառակ դեպքում՝ false։

11

public boolean isFile()

Ստուգում է, թե արդյոք աբաստրակտ ուղղու նշված ֆայլը նորմալ է, թե ոչ: Ֆայլը համարվում է նորմալ, եթե այն դիրեկտորիա չէ, և համապատասխանում է համակարգի կրիտերիաներին։ Java հավելվածի կողմից ստեղծված յուրաքանչյու ոչ-դիրեկտորիա ֆայլ երաշխավորված է լինել նորմալ ֆայլ: Վերադարձնում է true, եթե այս աբստրակտ ուղղու կողմից նշված ֆայլը գոյություն ունի և նորմալ է, հակառակ դեպքում՝ false։

12

public long lastModified()

Վերադարձնում է ժամանակը, որն աբստրակտ ուղղու կողմից նշված ֆայլը վերջին անգամ փոփոխել է: Վերադարձնում է երկար արժեք, որը ներկայացնում է այն ժամանակը, երբ ֆայլի վերջին անգամ ձևափոխվել է։ Չափվում է միլիվարկյաններով սկսված շրջանից (00:00:00 GMT, հունվարի 1, 1970) կամ 0L, եթե ֆայլը գոյություն չունի կամ եթե I/O error հայտնաբերվում։

13

public long length()

Վերադարձնում է աբստրակտ ուղղու նշված ֆայլի երկարությունը: Վերադարձի արժեքը չի նշվում, եթե այս ուղին նշանակում է դիրեկտորիաին։

14

public boolean createNewFile() throws IOException

Ավտոմատ կերպով ստեղծում է նոր, դատարկ ֆայլ, որը կոչվում է աբստրակտ ուղղու անունով, միայն այն դեպքում, եթե այս անունով ֆայլ չկա: Վերադարձնում է true, եթե նշված ֆայլը գոյություն չունի և հաջողությամբ ստեղծվել է։ false, եթե նշված անունով ֆայլը արդեն գոյություն ունի:

15

public boolean delete()

Ջնջում է աբստրակտ ուղղու կողմից նշված ֆայլը կամ դիրեկտորիան: Եթե այս ուղին նշում է դիրեկտորիա, ապա այն պետք է դատարկ լինի, որպեսզի ջնջվի: Վերադարձնում է true, եթե նշված ֆայլը կամ դիրեկտորիան հաջողությամբ ջնջված են, հակառակ դեպքում՝ false։

16

public void deleteOnExit()

Պահանջում է, որպեսզի աբստրակտ ուղղու կողմից նշված ֆայլը կամ դիրեկտորիան ջնջվի, երբ վիրտուալ մեքենան դադարում է գործունեությունը։

17

public String[] list()

Վերադարձնում է տողերի զանգվածը ըստ աբստրակտ ուղղու կողմից նշված ֆայլի և դիրեկտորիաի անվան։

18

public String[] list(FilenameFilter filter)

Վերադարձնում է տողերի զանգվածը ըստ աբստրակտ ուղղու կողմից նշված ֆայլի և դիրեկտորիա անվան, որը համապատասխանում է սահմանված ֆիլտրին։

20

public File[] listFiles()

Վերադարձնում է աբստրակտ ուղղու զանգվածը նշելով դիրեկտորիայում այս աբստրակտ ուղղու կողմից նշված ֆայլերը։

21

public File[] listFiles(FileFilter filter)

Վերադարձնում է աբստրակտ ուղղու զանգվածը նշելով դիրեկտորիայում աբստրակտ ուղղու կողմից նշված ֆայլերը և դիրեկտերիան, որը համապատասխանում է սահմանված ֆիլտրին։

22

public boolean mkdir()

Ստեղծում է այս աբստրակտ ուղղու անվամբ դիրեկտորիա: Վերադարձնում է true այն դեպքում, եթե դիրեկտորիան ստեղծվել է, հակառակ դեպքում՝ false:

23

public boolean mkdirs()

Ստեղծում է այս աբստրակտ ուղղու անվամբ դիրեկտորիա, ներառյալ ցանկացած անհրաժեշտ, բայց գոյություն չունեցող ծնողական դիրեկտորիաներ: Վերադարձնում է true այն դեպքում, եթե դիրեկտորիան ստեղծվել է անհրաժեշտ կերպով, հակառակ դեպքում՝ false:

24

public boolean renameTo(File dest)

Վերանվանվում է աբստրակտ ուղղու կողմից նշված ֆայլը։ Վերադարձնում է true, եթե անվանափոխումը հաջողվել է, հակառակ դեպքում՝ false:

25

public boolean setLastModified(long time)

Սահմանում է աբստրակտ ուղղու կողմից նշված ֆայլի կամ դիրեկտորիայի վերջին փոփոխված ժամանակը: Վերադարձնում է true, եթե գործընթացը հաջողվել է, հակառակ դեպքում՝ false:

26

public boolean setReadOnly()

Նշում է աբստրակտ ուղղու կողմից անվանված ֆայլն կամ դիրեկտորիան, որպեսզի թույլատրվի միայն ընթերցելու գործողությունը: Վերադարձնում է true, եթե գործընթացը հաջողվել է, հակառակ դեպքում՝ false:

27

public static File createTempFile(String prefix, String suffix, File directory) throws IOException

Ստեղծվում է նոր դատարկ ֆայլ`նշված տեղում, օգտագործելով տվյալ նախածանցի և suffix տողերը՝ անունը գեներացնելու համար: Վերադարձնում է աբստրակտ ուղին, որը նշանակում է նորաստեղծ դատարկ ֆայլ:

28

public static File createTempFile(String prefix, String suffix) throws IOException

Ստեղծվում է նոր դատարկ ֆայլ` ժամանակավոր-ֆայլի դիրեկտորիայում, օգտագործելով տվյալ նախածանցի և suffix տողերը՝ անունը գեներացնելու համար: Այս մեթոդի կիրառումը համարժեք է createTempFile-ի (prefix, suffix, null) հետ: Վերադարձնում է աբստրակտ ուղին, որը նշանակում է նորաստեղծ դատարկ ֆայլ:

29

public int compareTo(File pathname)

Համեմատում է երկու աբստրակտ ուղղիներ։ Վերադարձնում է զրո, եթե փաստարկը հավասար է սույն աբստրակտ ուղղուն, զրոյից ցածր արժեք, եթե սույն աբստրակտ ուղղին լիքխոգրաֆիկորեն պակաս է փաստարկից, կամ զրոյից ավելի մեծ արժեք, եթե սույն աբստրակտ ուղին այս ավելի մեծ է, քան փաստարկը:

30

public int compareTo(Object o)

Համեմատում է աբստրակտ ուղղին օբյեկտի հետ։ Վերադարձնում է զրո, եթե փաստարկը հավասար է սույն աբստրակտ ուղղուն, զրոյից ցածր արժեք, եթե սույն աբստրակտ ուղին լիքխոգրաֆիկորեն պակաս է փաստարկից, կամ զրոյից ավելի մեծ արժեք, եթե սույն աբստրակտ ուղին այս ավելի մեծ է, քան փաստարկը:

31

public boolean equals(Object obj)

Փորձարկում է աբստրակտ ուղու և տվյալ օբյեկտի հավասարությունը։ Վերադարձնում է true այն դեպքում, եթե փաստարկը 0 չէ և աբստրակտ ուղի է, որը նշում է նույն ֆայլը կամ դիրեկտորիան ինչպես այս ուղին:

32

public String toString()

Returns the pathname string of this abstract pathname. This is just the string returned by the getPath() method.

Վերադարձնում է աբստրակտ ուղու տողը: Սա պարզ տող է վերադրաձված justPath () մեթոդով:

Օրինակ՝

Հետեւյալ օրինակը ներկայացնում է File object-ը։

ackage com.tutorialspoint;

import java.io.File;

 

public class FileDemo {

public static void main(String[] args) {

File f = null;

String[] strs = {“test1.txt”, “test2.txt”};

try {

// for each string in string array

for(String s:strs ) {

// create new file

f = new File(s);

// true if the file is executable

boolean bool = f.canExecute();

// find the absolute path

String a = f.getAbsolutePath();

// prints absolute path

System.out.print(a);

// prints

System.out.println(” is executable: “+ bool);

}

} catch (Exception e) {

// if any I/O error occurs

e.printStackTrace();

}

}

}

Պատկերացրեք, որ գոյություն ունի test1.txt գործարկվող ֆայլ, և test2.txt- ի մեկ այլ ֆայլ, որը չի կարող գործարկվել հետևյալ դիրեկտորիայում։ Եկեք հավաքենք և գործարկենք վերը նշված ծրագիրը։ Ահա, արդյունքը։

Արդյունքը՝

/home/cg/root/2880380/test1.txt is executable: false

/home/cg/root/2880380/test2.txt is executable: false