🎯 📘 Bagian 2 (Lanjutan & Penerapan) • Modul 11 100% Standar Industri & Vokasi

File I/O & Manipulasi Sistem Berkas (dart:io)

Modul pembelajaran File I/O & Manipulasi Sistem Berkas (dart:io).

⚡ Pemrograman DART

13. File I/O & Manipulasi Sistem Berkas (dart:io)

1. Pengenalan Library dart:io

Library dart:io menyediakan API bawaan untuk berinteraksi dengan sistem operasi lokal (membaca file, membuat folder, networking socket, stdin/stdout/stderr). Catatan: dart:io berjalan pada Command Line & Flutter native (bukan Web).

2. Menulis & Membaca File Teks secara Asinkron

import 'dart:io';

void main() async {
  final fileLog = File('server_logs.txt');

  // 1. Menulis teks ke berkas (Write)
  String logEntry = "[${DateTime.now()}] INFO: Server MikroTik Online\n";
  await fileLog.writeAsString(logEntry, mode: FileMode.append);
  print("Log berhasil ditulis ke server_logs.txt");

  // 2. Memeriksa keberadaan file
  if (await fileLog.exists()) {
    // 3. Membaca isi berkas (Read)
    String isiLog = await fileLog.readAsString();
    print("\n--- ISI BERKAS LOG ---");
    print(isiLog);
  }
}

3. Manajemen Direktori & Iterasi Berkas

import 'dart:io';

void main() async {
  final direktori = Directory('backup_data');

  // Membuat direktori jika belum ada
  if (!await direktori.exists()) {
    await direktori.create(recursive: true);
    print("Folder backup_data berhasil dibuat!");
  }

  // Mendaftar seluruh berkas di dalam folder
  await for (var entity in direktori.list(recursive: false)) {
    if (entity is File) {
      print("File ditemukan: ${entity.path} (Ukuran: ${await entity.length()} bytes)");
    }
  }
}