将文本文件读入字符串数组(并写入)

将文本文件读入字符串数组(并写入),第1张

将文本文件读入字符串数组(并写入)

从Go1.1版本开始,有一个bufio.Scanner
API可以轻松读取文件中的行。考虑上面的以下示例,该示例使用Scanner重写:

package mainimport (    "bufio"    "fmt"    "log"    "os")// readLines reads a whole file into memory// and returns a slice of its lines.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()}// writeLines writes the lines to the given file.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, err := readLines("foo.in.txt")    if err != nil {        log.Fatalf("readLines: %s", err)    }    for i, line := range lines {        fmt.Println(i, line)    }    if err := writeLines(lines, "foo.out.txt"); err != nil {        log.Fatalf("writeLines: %s", err)    }}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5121866.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-17
下一篇2022-11-17

发表评论

登录后才能评论

评论列表(0条)

    保存