Ano ang klase ng Java File
Ang klase ng File ay tinukoy sa java.io package at hindi ito gumagana nang direkta sa mga stream. Ang klase ng Java File ay upang pamahalaan ang impormasyon tungkol sa mga file at direktoryo. Tulad ng alam mo, sa antas ng operating system, ang mga file at direktoryo ay magkakaibang mga bagay. Gayunpaman sa Java, pareho silang inilarawan ng parehong klase ng File . Maaaring nagtataka ka kung bakit hindi na lang gumamit ng mga string para sumangguni sa mga file? Una sa lahat, dahil ang pag-access ng file ay iba sa iba't ibang mga operating system.Mga tagabuo ng klase ng file
Depende sa kung ang Java.io.File Class object ay dapat kumatawan sa isang file o isang direktoryo, maaari naming gamitin ang isa sa mga constructor para likhain ang object: File(String pathname) sa kasong ito, ang constructor ay gumagawa ng bagong File instance sa pamamagitan ng pag-convert ng ibinigay na pathname string sa isang abstract na pathname. File(String myPath, String myString) ang constructor na ito ay lumilikha ng bagong File instance mula sa isang myPath pathname string at isang myString pathname string. Ang File(File parent, String name) ay lumilikha ng bagong File instance mula sa isang abstract na pathname ng file at isang string ng pathname ng pangalan. File(URI uri) sa kasong ito, ang constructor ay gumagawa ng bagong File instance sa pamamagitan ng pag-convert ng ibinigay na file: URI sa isang abstract na pathname. Ang URI ay isang Java class na kumakatawan sa isang Uniform Resource Identifier (URI) reference. Narito ang isang halimbawa ng iba't ibang Java.io.File Class constructors:import java.io.File;
import java.net.URI;
import java.net.URISyntaxException;
public class FileTest {
public static void main(String[] args) throws URISyntaxException {
File myFile1 = new File("d:\\MyCat");
File myFile2 = new File ("d:\\MyCat", "cat.txt");
File myFile3 = new File(myFile1, "cat.txt");
URI uri = new URI ("https://docs.oracle.com/javase/7/docs/api/java/net/URI.html");
File myFile4 = new File(uri);
}
}
Mga Paraan ng File Class
Ang klase ng Java File ay may ilang mga pamamaraan na nagbibigay-daan sa iyong manipulahin ang mga file at direktoryo. Isaalang-alang natin ang ilan sa mga ito:-
Ang boolean createNewFile() ay lumilikha ng bagong file sa path na ipinasa sa constructor. Nagbabalik ng true kung matagumpay, kung hindi man ay mali
-
Tinatanggal ng boolean delete() ang isang direktoryo o file sa path na ipinasa sa constructor. Nagbabalik ng true sa matagumpay na pagtanggal
-
Ang boolean exists() ay sumusuri kung ang isang file o direktoryo ay umiiral sa landas na tinukoy sa constructor. Kung ang file o direktoryo ay umiiral, nagbabalik ng true, kung hindi ay nagbabalik ng false
-
Ibinabalik ng String getAbsolutePath() ang absolute path para sa path na ipinasa sa constructor ng object
-
Ibinabalik ng String getName() ang maikling pangalan ng isang file o direktoryo
-
Ibinabalik ng String getParent() ang pangalan ng direktoryo ng magulang
-
Ang boolean isDirectory() ay nagbabalik ng true kung ang ibinigay na path ay naglalaman ng isang direktoryo
-
Ang boolean isFile() ay nagbabalik ng true kung mayroong isang file sa ibinigay na landas
-
Ang boolean isHidden() ay nagbabalik ng true kung nakatago ang direktoryo o file
-
long length() ay nagbabalik ng laki ng file sa bytes
-
long lastModified() ay nagbabalik ng oras kung kailan huling binago ang isang file o direktoryo. Kinakatawan ng value ang bilang ng mga millisecond na lumipas mula noong panahon ng Unix
-
Ang String[] list() ay nagbabalik ng hanay ng mga file at subdirectory na nasa isang partikular na direktoryo
-
Ang File[] listFiles() ay nagbabalik ng hanay ng mga file at subdirectory na nasa isang partikular na direktoryo
-
Ang boolean mkdir() ay lumilikha ng bagong direktoryo at nagbabalik ng true kung matagumpay
-
Pinapalitan ng boolean renameTo(File dest) ang isang file o direktoryo
Ang ilang mga tampok ng klase ng Java File
-
Ang landas, abstract o string, ay maaaring maging ganap o kamag-anak. Ang parent ng abstract path ay maaaring makuha sa pamamagitan ng pagtawag sa getParent() method ng class na iyon.
-
Una dapat tayong lumikha ng isang bagay ng klase ng File , na ipinapasa ito sa pangalan ng isang file o direktoryo. Ang file system ay maaaring magpataw ng mga paghihigpit sa ilang mga operasyon sa aktwal na object ng file system, tulad ng pagbabasa, pagsusulat, at pagpapatupad. Ang mga paghihigpit na ito ay tinatawag na mga pahintulot sa pag-access.
-
Ang mga pagkakataon ng klase ng File ay hindi nababago. Ibig sabihin, kapag gumawa ka ng file, hindi na magbabago ang abstract path na kinakatawan ng File object.
Mga halimbawa ng code ng klase ng file
Gumawa tayo ng program na gumagana sa mga direktoryo. Una sa lahat dapat itong lumikha ng isang direktoryo sa ibinigay na landas at pagkatapos ay lumikha ng isang bagong file at suriin kung ang file at direktoryo ay umiiral.import java.io.File;
import java.io.IOException;
public class FileTest2 {
public static void main(String[] args) throws IOException {
//create a directory using mkdir() File class method
File dir = new File("d:\\MyDir");
boolean created = dir.mkdir();
if(created)
System.out.println("Folder has been created...");
else
System.out.println("Folder hasn't been created...");
File myFile = new File("d:\\MyDir\\cat.txt");
myFile.createNewFile();
System.out.println("File name: " + myFile.getName());
System.out.println("Parent folder: " + myFile.getParent());
if(myFile.exists())
System.out.println("File exists");
else
System.out.println("File not found");
}
}
Narito ang output:
import java.io.File;
public class FileTest3 {
public static void main(String[] args) {
File dir = new File("d:\\MyDir");
File myFile = new File("d:\\MyDir\\cat.txt");
System.out.println("File name: " + myFile.getName());
System.out.println("Parent folder: " + myFile.getParent());
if (myFile.exists())
System.out.println("File exists");
else
System.out.println("File not found");
System.out.println("Absolute path: " + myFile.getAbsolutePath());
if (myFile.exists()) {
System.out.println("Is writable: " + myFile.canWrite());
System.out.println("Is readable: " + myFile.canRead());
System.out.println("Is a directory: " + myFile.isDirectory());
System.out.println("myFile Size in bytes = " + myFile.length());
}
}
}
Ang output ng programa ay:
GO TO FULL VERSION