小编ABr*_*Bri的帖子

buffo.Scanner逐行读取文件的奇怪行为

我使用bufio.Scanner逐行读取文件到变量wordlist([] [] byte)

这是代码(使用go 1.1/1.3进行测试).

package main

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

func main() {
    fle, err := os.Open("words.txt")
    if err != nil {
        log.Fatal(err)
    }
    defer fle.Close()

    scanner := bufio.NewScanner(fle)

    n := 1000
    dCnt := 5
    var wordlist [][]byte

    for scanner.Scan() {
        if len(wordlist) == n {
            break
        }
        word := scanner.Bytes()
        for ii := 0; ii < len(wordlist); ii++ {
            if string(word) == string(wordlist[ii]) {
                log.Println(ii, string(word), string(wordlist[ii]))
                log.Println(len(wordlist), "double")

                dCnt--
                if dCnt == 0 { …
Run Code Online (Sandbox Code Playgroud)

go

3
推荐指数
1
解决办法
133
查看次数

标签 统计

go ×1