包含檔案和其他目錄的檔案系統結構在java中稱為目錄,透過java.nio.file.files類別中的靜態方法與其他類型的檔案一起操作,並建立一個新目錄java 使用Files.CreateDirectories建立父目錄(如果父目錄不存在),並設定新建立的目錄的權限,使用PossixFilePermissions。
廣告 該類別中的熱門課程 JAVA 掌握 - 專業化 | 78 課程系列 | 15 次模擬測驗開始您的免費軟體開發課程
網頁開發、程式語言、軟體測試及其他
可以使用三種方法建立目錄。他們是:
可以使用Files.CreateDirectory()方法建立一個新目錄。文件已存在 如果檔案已存在,則會拋出異常。
Java 中的範例程序,示範使用 Files.CreateDirectory() 建立目錄
代碼:
import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; public class CreateDir { public static void main(String[] args) throws IOException { String Name = "C:\Users\admin\Desktop\newdir"; Path path1 = Paths.get(Name); if (!Files.exists(path1)) { Files.createDirectory(path1); System.out.println("Creation of directory successful"); } else { System.out.println("A directory with this name already exists"); } } }
輸出:
使用Files方法可以建立一個新的目錄。 CreateDirectories如果沒有建立的話也會建立父目錄,如果目錄已經存在則該方法不會拋出例外。
Java 中的範例程序,示範使用 Files.CreateDirectories() 建立目錄。
代碼:
import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; public class CreateDir { public static void main(String[] args) throws IOException { String Name = "C:\Users\admin\Desktop\newdir"; Path path1 = Paths.get(Name); Files.createDirectories(path1); } }
輸出:
上述程式的輸出如下格式所示:
執行上述範例時,會使用 File.createDirectories 建立一個新目錄。
可以使用 PosixFilePermissions 方法建立新目錄並設定其權限。 Windows系統不允許使用該類別。
代碼:
import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.attribute.FileAttribute; import java.nio.file.attribute.PosixFilePermission; import java.nio.file.attribute.PosixFilePermissions; import java.util.Set; public class CreateDir { public static void main(String[] args) throws IOException { String Name = "C:\Users\admin\Desktop\newdir"; Path path1 = Paths.get(Name); if (!Files.exists(path1)) { Set<PosixFilePermission>permissions1=PosixFilePermissions.fromString("rwxr--r--"); FileAttribute<Set<PosixFilePermission>>fileAttributes=PosixFilePermissions.asFileAttribute(permissions1); Files.createDirectory(path1, fileAttributes); System.out.println("Creation of directory successful"); } else { System.out.println("A directory with this name already exists"); } } }
輸出:
有五種方法可以列出目錄中包含的檔案和目錄的清單。他們是:
使用此方法 String[] list[] 傳回字串陣列。目錄中存在的所有檔案和目錄的名稱都存在於字串陣列中。當我們只需要目錄中的檔案名稱和所有目錄時,我們使用此方法。
使用此方法 String[] list[Filename Filter filter] 傳回字串陣列。目錄中存在的所有檔案和目錄都存在於字串陣列中。給定的過濾器指定要過濾的檔案。當我們想要過濾目錄中存在的檔案和目錄的名稱時,我們使用此方法。
使用此方法 File[] listFiles[] 傳回檔案的物件陣列。當我們想要處理單一目錄或檔案目錄時,例如檢查檔案的大小或取得絕對路徑,我們使用此方法。
使用此方法 File[] lisFiles(Filename Filter filter) 傳回檔案的物件數組,但給定的篩選器過濾指定的檔案。我們使用此方法使用一些過濾器來過濾文件物件。
使用此方法傳回檔案的物件陣列 File[] lisFiles(Filename Filter filter) ),但給定的篩選器過濾指定的檔案。我們使用此方法使用一些過濾器來過濾文件物件。
CreateTempDirectory()方法用於在java中建立臨時目錄。此方法屬於指定前綴的Files類,可以新增屬性,但這是可選的。下面的程式演示了Java中暫存目錄的建立。
代碼:
private void createDir() throws IOException { Path temp = Files.createTempDirectory("C:\Users\admin\Desktop\newdir"); Path temp = Files.createTempFile(temp, "C:\Users\admin\Desktop\newdir", ".tmp"); List<String> lines1 = Arrays.asList("Line1", "Line2"); Files.write(temp, lines1, Charset.defaultCharset(), StandardOpenOption.WRITE); System.out.printf("Content written to the temporary file %s%n", tempFile.toString()); }
示範寫入檔案的程式
代碼:
String dir = System.getProperty("C:\Users\admin\Desktop\newdir"); String file = "check.txt"; String Path = directory + File.separator + fileName; // contents are written to the file try(FileWriter fileWriter = new FileWriter(Path)) { String Content = "This is a file."; fileWriter.write(Content); } catch (IOException e) { // exceptions are handled } // contents are read from the file try(FileReader fileReader = new FileReader(Path)) { int cha = fileReader.read(); while(cha != -1) { System.out.print((char)cha); cha = fileReader.read(); } } catch (FileNotFoundException e) { // exceptions are handled } catch (IOException e) { // exceptions are handled
輸出:
優點如下:
在本教程中,我們了解目錄的概念,使用不同方法在java中創建目錄,java中目錄的列表,臨時目錄的創建,寫入目錄中的文件,java中目錄的優點以及編程示例演示使用不同方法在java 中建立目錄,寫入java 目錄中的檔案及其輸出快照。
以上是Java目錄的詳細內容。更多資訊請關注PHP中文網其他相關文章!