0Pricing
Swift Academy · Pelajaran

Mengelola Direktori

Buat, tampilkan daftar, dan hapus direktori.

Mengelola Direktori adalah pelajaran Swift Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Swift Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Swift Academy mencakup 4 pelajaran total.

Mengelola Direktori

FileManager adalah objek utama untuk membuat, mencantumkan, memindahkan, dan menghapus berkas serta folder.

FileManager Bersama

Gunakan FileManager.default untuk sebagian besar operasi. Nilai ini menyediakan instans bersama yang aman untuk digunakan oleh beberapa utas.

import Foundation

let fm = FileManager.default
print("Got the default file manager")

Membuat Direktori

createDirectory(at:withIntermediateDirectories:) membuat folder dan, jika diperlukan, membuat semua induk yang belum ada.

import Foundation

let fm = FileManager.default
let dir = URL(fileURLWithPath: "/tmp/myapp/cache")
try? fm.createDirectory(at: dir, withIntermediateDirectories: true)
print("Directory created")

Memeriksa Keberadaan

fileExists(atPath:) melaporkan apakah suatu jalur ada, dan sebuah penanda parameter masuk-keluar memberi tahu apakah jalur tersebut merupakan direktori.

import Foundation

let fm = FileManager.default
var isDir: ObjCBool = false
let exists = fm.fileExists(atPath: "/tmp", isDirectory: &isDir)
print("Exists: \(exists), isDir: \(isDir.boolValue)")

Menampilkan Isi

contentsOfDirectory(at:includingPropertiesForKeys:) mengembalikan URL yang berada di dalam folder.

import Foundation

let fm = FileManager.default
let dir = URL(fileURLWithPath: "/tmp")
if let items = try? fm.contentsOfDirectory(at: dir, includingPropertiesForKeys: nil) {
    print("Item count: \(items.count)")
}

Menampilkan Nama Saja

contentsOfDirectory(atPath:) berbasis jalur mengembalikan string nama berkas biasa jika Anda tidak memerlukan URL lengkap.

import Foundation

let fm = FileManager.default
if let names = try? fm.contentsOfDirectory(atPath: "/tmp") {
    print("Names count: \(names.count)")
}

Menghapus Item

removeItem(at:) menghapus berkas atau seluruh pohon direktori. Gunakan dengan hati-hati.

import Foundation

let fm = FileManager.default
let url = URL(fileURLWithPath: "/tmp/myapp/cache/old.txt")
try? fm.removeItem(at: url)
print("Removed item if it existed")

Memindahkan dan Mengganti Nama

moveItem(at:to:) memindahkan atau mengganti nama; copyItem(at:to:) menggandakan berkas.

import Foundation

let fm = FileManager.default
let src = URL(fileURLWithPath: "/tmp/a.txt")
let dst = URL(fileURLWithPath: "/tmp/b.txt")
try? fm.moveItem(at: src, to: dst)
print("Moved if source existed")

Menelusuri Secara Mendalam

FileManager.DirectoryEnumerator menelusuri seluruh subpohon secara rekursif dan menghasilkan setiap URL bertingkat.

import Foundation

let fm = FileManager.default
let root = URL(fileURLWithPath: "/tmp")
if let e = fm.enumerator(at: root, includingPropertiesForKeys: nil) {
    var count = 0
    for case _ as URL in e { count += 1; if count > 5 { break } }
    print("Walked some entries: \(count)")
}

Atribut Berkas

attributesOfItem(atPath:) mengembalikan metadata seperti ukuran dan tanggal perubahan dalam sebuah kamus.

import Foundation

let fm = FileManager.default
if let attrs = try? fm.attributesOfItem(atPath: "/tmp"),
   let size = attrs[.size] {
    print("Has size attribute: \(size)")
}

Menangani Kegagalan

Operasi direktori menimbulkan kesalahan terkait izin atau jalur yang tidak ditemukan. Bungkus operasi tersebut dalam do/catch agar dapat menanganinya dengan baik.

import Foundation

let fm = FileManager.default
do {
    try fm.removeItem(at: URL(fileURLWithPath: "/no/such/file"))
} catch {
    print("Remove failed: \(error.localizedDescription)")
}

Pemeriksaan Singkat

Opsi mana yang membuat createDirectory juga membuat folder induk yang belum ada?

Rangkuman

FileManager.default membuat folder dengan createDirectory, memeriksa dengan fileExists, menampilkan isi dengan contentsOfDirectory, menghapus dengan removeItem, serta memindahkan atau menyalin item. Anda juga telah menelusuri subpohon dan membaca atribut. Berikutnya: direktori kotak pasir aplikasi.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Mengelola Direktori” gratis?

Ya — teks lengkap “Mengelola Direktori” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Swift Academy, upgrade ke CoddyKit PRO. Kursus Swift Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Mengelola Direktori”?

Buat, tampilkan daftar, dan hapus direktori. Kamu berlatih Swift Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Swift Academy?

Tidak diperlukan pengalaman sebelumnya. Swift Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.

Berapa lama pelajaran “Mengelola Direktori” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Swift Academy ini?

Ya. Setiap pelajaran Swift Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. URL dan Jalur Berkas
  2. Membaca dan Menulis Data
  3. Mengelola Direktori
  4. Direktori Kotak Pasir Aplikasi
← Kembali ke Swift Academy