Apabila bekerja dengan fail teks, membaca kandungannya menjadi pembolehubah menjadi perlu. Golang menyediakan beberapa cara untuk mencapai ini, seperti yang ditunjukkan di bawah:
Untuk mencetak keseluruhan kandungan fail teks, gunakan fmt.Print(file). Walau bagaimanapun, ini akan mengeluarkan nilai penunjuk deskriptor fail, bukan kandungan fail.
Fungsi ini membaca semua kandungan fail ke dalam memori sebagai bait:
b, err := io.ReadAll(file) fmt.Print(b)
Membaca dalam bahagian yang lebih kecil boleh menjadi lebih cekap memori untuk fail besar:
buf := make([]byte, 32*1024) // Define buffer size for { n, err := file.Read(buf) if n > 0 { fmt.Print(buf[:n]) } if err == io.EOF { break } if err != nil { log.Printf("read %d bytes: %v", n, err) break } }
Menggunakan Pengimbas menandakan fail berdasarkan pemisah, dengan lalainya ialah baris baharu:
scanner := bufio.NewScanner(file) for scanner.Scan() { fmt.Println(scanner.Text()) // Token as unicode characters fmt.Println(scanner.Bytes()) // Token as bytes }
Untuk mendapatkan maklumat dan contoh tambahan, rujuk pada helaian curang fail Golang untuk teknik pengendalian fail yang komprehensif.
Atas ialah kandungan terperinci Bagaimanakah cara saya membaca fail teks di Golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!