我最近遇到了如何从 CSV 文件中读取、对每一行应用一些转换并写入 HTTP 请求的问题。
我遇到的问题是如何从返回任意字节数的逐行读取器(如扫描仪)转换为字节读取器,后者在每次调用 Read() 时返回固定数量的字节。
我想出的最佳解决方案是构建一个自定义的 io.Reader,如果字节不合适,它将从扫描仪读取并在本地缓冲字节。然后缓冲的字节将在下一次调用 Read() 时返回。
直觉上,这感觉像是错误的解决方案,因为代码看起来像是标准库中可能已经存在的相当低级的解决方案。
有没有更好的方法,更惯用标准的 go 组件来做到这一点?
月关宝盒
相关分类