Golang : Read a file line by line
Got another newbie to Golang asking me for help today on how to read a file line by line. The simplest way that I can think of is to use the bufio.NewScanner() and scanner.Scan() functions. Below is a sample code for reading a text file line by line.
Content of file.dat
First
Second
Third
Fourth
Fifth
and the program will read the file
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
file, err := os.Open("./file.dat")
if err != nil {
fmt.Println(err)
os.Exit(1)
}
defer file.Close()
reader := bufio.NewReader(file)
scanner := bufio.NewScanner(reader)
for scanner.Scan() {
fmt.Println(scanner.Text())
}
}
and output the following
First
Second
Third
Fourth
Fifth
Reference :
See also : Golang : Scanf function weird error in Windows
By Adam Ng
IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.
Advertisement
Tutorials
+19k Golang : How to Set or Add Header http.ResponseWriter?
+12.8k Golang : Generate Code128 barcode
+4.8k Golang : Pad file extension automagically
+3.9k Golang : Converting individual Jawi alphabet to Rumi(Romanized) alphabet example
+22.5k Golang : Randomly pick an item from a slice/array example
+13.1k Golang : Get dimension(width and height) of image file
+13.9k Golang : How to get URL port?
+6.9k Golang : Calculate how many weeks left to go in a given year
+7.4k Swift : Convert (cast) String to Double
+6.5k Swift : substringWithRange() function example
+9.4k PHP : Get coordinates latitude/longitude from string
+7.1k Golang : Shuffle strings array