Salah satu tugas paling umum dalam pemrograman adalah mengelola file. Entah itu membaca file konfigurasi, memproses data log, atau menyimpan hasil kerja, berinteraksi dengan file adalah skill dasar yang wajib dikuasai.

Di Go, tugas ini dibuat sangat sederhana dan lugas berkat standard library os dan io/ioutil.

Dalam catatan kali ini, kita akan belajar dua hal fundamental:

  1. Membaca seluruh konten dari sebuah file teks.
  2. Menulis data (string) ke sebuah file baru.

Mari kita mulai!


📖 Membaca File Teks

Anggap kita punya file bernama catatan.txt dengan isi sebagai berikut:

catatan.txt

Untuk membaca seluruh isi file ini, kita bisa menggunakan fungsi os.ReadFile(). Fungsi ini sangat praktis karena langsung mengembalikan seluruh konten file dalam bentuk []byte (slice of bytes).

Berikut adalah kode lengkapnya:

main.go

package main

import (
	"fmt"
	"os"
)

func main() {
	// Membaca file catatan.txt
	data, err := os.ReadFile("catatan.txt")
	if err != nil {
		// Jika file tidak ditemukan atau ada error lain, program akan berhenti
		fmt.Println("Error saat membaca file:", err)
		return
	}

	// 'data' adalah []byte, kita ubah menjadi string untuk ditampilkan
	fmt.Println("Isi file:")
	fmt.Println(string(data))
}