最常见的比如直接对文件本身进行Read和Write; 除此之外,还可以使用bufio库的流式处理以及分片式处理;如果文件较小,使用ioutil也不失为一种方法。文件的读取效率是所有开发者都会关心的话题,尤其是当文件特别大的时候。这三个文件大小分别为4KB、21MB、1GB。其中内容是比较常规的json格式的文本。read2函数使用的是bufio库,操作NewReader对文件进行流式处理,和前面一样,为了确定确实都到了文件内容,并将读到的大小字节数返回。read3函数是使用ioutil库进行文件读取,这种方式比较暴力,直接将文件内容一次性全部读到内存中,然后对内存中的文件内容进行相关的操作。我们使用如下的测试代码进行测试:在main函数中调用如下:测试结果如下所示:从以上结果可知:

Go语言文件读取的一些总结

Go语言文件读取的一些总结

Go语言文件读取的一些总结