如何使用Golang自定义扫描器字符串文字并扩展内存以将整个文件加载到内存中?

如何使用Golang自定义扫描器字符串文字并扩展内存以将整个文件加载到内存中?,第1张

如何使用Golang自定义扫描器字符串文字并扩展内存以将整个文件加载到内存中?

如果最终还是要读取整个文件,则使用扫描仪会有些麻烦。我将阅读整个文件,然后将其拆分为引号列表:

package mainimport (    "bytes"    "io/ioutil"    "log"    "math/rand"    "os")func main() {    // Slurp file.    contents, err := ioutil.ReadFile("/Users/bryan/Dropbox/quotes_file.txt")    if err != nil { log.Fatal(err)    }    // Split the quotes    separator := []byte("$$") // Convert string to []byte    quotes := bytes.Split(contents, separator)    // Select three random quotes and write them to stdout    for i := 0; i < 3; i++ { n := rand.Intn(len(quotes)) quote := quotes[n] os.Stdout.Write(quote) os.Stdout.Write([]byte{'n'}) // new line, if necessary    }}

如果 读取文件 之前 选择了三个引号 则使用扫描仪将很有意义。那么您可以在到达最后一个报价后停止阅读。



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

原文地址: http://outofmemory.cn/zaji/5028629.html

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

发表评论

登录后才能评论

评论列表(0条)

保存