Home > Backend Development > Golang > How to Read and Write Text Files to a String Array in Go?

How to Read and Write Text Files to a String Array in Go?

DDD
Release: 2024-12-13 12:23:20
Original
385 people have browsed it

How to Read and Write Text Files to a String Array in Go?

Reading and Writing Text Files to a String Array in Go

Reading and writing text files into and out of a string array is a common requirement in programming. In Go, this can be achieved using the bufio.Scanner API introduced in Go1.1.

Consider the following code snippet that uses bufio.Scanner to read a text file into a string array:

package main

import (
    "bufio"
    "fmt"
    "log"
    "os"
)

func readLines(path string) ([]string, error) {
    file, err := os.Open(path)
    if err != nil {
        return nil, err
    }
    defer file.Close()

    var lines []string
    scanner := bufio.NewScanner(file)
    for scanner.Scan() {
        lines = append(lines, scanner.Text())
    }
    return lines, scanner.Err()
}

func main() {
    lines, err := readLines("foo.in.txt")
    if err != nil {
        log.Fatalf("readLines: %s", err)
    }
    for i, line := range lines {
        fmt.Println(i, line)
    }
}
Copy after login

This function opens the specified file, creates a bufio.Scanner for the file, iterates over each line in the file, and appends the line to a string array.

You can also write a string array to a text file using the writeLines function:

func writeLines(lines []string, path string) error {
    file, err := os.Create(path)
    if err != nil {
        return err
    }
    defer file.Close()

    w := bufio.NewWriter(file)
    for _, line := range lines {
        fmt.Fprintln(w, line)
    }
    return w.Flush()
}

func main() {
    lines := []string{"line 1", "line 2", "line 3"}
    if err := writeLines(lines, "foo.out.txt"); err != nil {
        log.Fatalf("writeLines: %s", err)
    }
}
Copy after login

This function creates a file, writes the lines to the file using a bufio.Writer, and flushes the writer to ensure all data is written to the file.

These functions provide a simple and effective way to read and write text files into and out of a string array in Go.

The above is the detailed content of How to Read and Write Text Files to a String Array in Go?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template