System.IO Namespace pada Bahasa Pemrograman C#
Pernah kepikiran gimana cara membaca, menulis, atau menghapus file lewat kode? Di sinilah System.IO dalam C# berperan! Dengan namespace System.IO, kita bisa mengelola file dan folder, entah itu membaca file teks, menulis ke dalamnya, atau bahkan mengecek apakah file tertentu ada di sistem.
Namespace ini wajib dikuasai kalau kamu sering kerja dengan data berbasis file. Yuk, kita bahas apa itu System.IO, bagaimana cara menggunakannya, dan contoh praktisnya!
1. Apa Itu System.IO dalam C#?
System.IO adalah namespace di C# yang menyediakan kelas dan method untuk mengelola file, direktori, dan aliran data (stream).
Ciri-Ciri System.IO
✅ Bisa membaca dan menulis file dengan mudah.
✅ Bisa mengecek apakah file atau folder ada.
✅ Bisa membaca file baris per baris atau sekaligus.
✅ Mendukung operasi sinkron dan asinkron untuk performa lebih baik.
2. Kelas-Kelas Penting dalam System.IO
1. File
– Baca dan Tulis File dengan Mudah
Digunakan untuk membaca, menulis, menyalin, atau menghapus file.
using System;
using System.IO;
class Program {
static void Main() {
string path = "contoh.txt";
File.WriteAllText(path, "Hello, System.IO!");
string isiFile = File.ReadAllText(path);
Console.WriteLine("Isi file: " + isiFile);
}
}
Output:
Isi file: Hello, System.IO!
2. Directory
– Kelola Folder dengan Mudah
Digunakan untuk membuat, menghapus, atau mengecek folder.
string folderPath = "TestFolder";
if (!Directory.Exists(folderPath)) {
Directory.CreateDirectory(folderPath);
Console.WriteLine("Folder dibuat!");
} else {
Console.WriteLine("Folder sudah ada.");
}
3. StreamReader
– Membaca File Baris per Baris
Kalau file besar, lebih baik baca baris per baris pakai StreamReader
.
using System;
using System.IO;
class Program {
static void Main() {
using (StreamReader reader = new StreamReader("contoh.txt")) {
string line;
while ((line = reader.ReadLine()) != null) {
Console.WriteLine(line);
}
}
}
}
4. StreamWriter
– Menulis File Secara Bertahap
Buat menulis ke dalam file tanpa menghapus isi lama, kita bisa pakai StreamWriter
.
using System;
using System.IO;
class Program {
static void Main() {
using (StreamWriter writer = new StreamWriter("contoh.txt", true)) {
writer.WriteLine("Tambahan baru ke dalam file!");
}
}
}
3. Mengecek Keberadaan File dan Direktori
Sebelum membaca atau menghapus file, pastikan dulu file atau folder-nya ada!
if (File.Exists("contoh.txt")) {
Console.WriteLine("File ditemukan!");
} else {
Console.WriteLine("File tidak ditemukan.");
}
Untuk folder:
if (Directory.Exists("TestFolder")) {
Console.WriteLine("Folder ditemukan!");
}
4. Menghapus File dan Folder Secara Otomatis
Kalau mau menghapus file atau folder, gampang banget!
File.Delete("contoh.txt");
Console.WriteLine("File dihapus!");
Directory.Delete("TestFolder", true); // True = hapus folder beserta isinya
Console.WriteLine("Folder dihapus!");
5. Kapan Harus Menggunakan System.IO?
✅ Gunakan System.IO jika:
- Mau membaca dan menulis file secara langsung.
- Mau mengecek, membuat, atau menghapus folder.
- Mau menangani data berbasis file dalam aplikasi.
❌ Jangan gunakan System.IO jika:
- Aplikasi hanya menggunakan database tanpa file eksternal.
- Membutuhkan penyimpanan data dalam jumlah besar (gunakan database!).
6. Kesimpulan
- System.IO adalah namespace di C# yang digunakan untuk mengelola file dan direktori.
- Kelas
File
danDirectory
digunakan untuk operasi cepat seperti membaca, menulis, dan menghapus file. - Gunakan
StreamReader
danStreamWriter
untuk membaca dan menulis file secara bertahap. - Pastikan selalu mengecek keberadaan file atau folder sebelum mengaksesnya.
Dengan memahami System.IO dalam C#, kamu bisa lebih mudah bekerja dengan file dan folder secara efisien!