file - 将 *multipart.FileHeader 的内容读入 []byte

标签 file go byte

如何在 GO 中将 *multipart.FileHeader 中包含的文件的正文/内容读取到字节 ([]byte) 中。

我要做的唯一一件事就是将内容读取到一个巨大的 byte slice 中,但我当然想要文件的确切大小。 之后我想用 md5 散列文件内容。

// file is a *multipart.FileHeader gotten from http request.
fileContent, _ := file.Open()
var byteContainer []byte
byteContainer = make([]byte, 1000000)
fileContent.Read(byteContainer)
fmt.Println(byteContainer)

最佳答案

尝试 ioutil.ReadAll

https://play.golang.org/p/FUgPAZ9w2X .

在你的情况下做;

byteContainer, err := ioutil.ReadAll(fileContent) // you may want to handle the error
fmt.Printf("size:%d", len(byteContainer))

您可能还想从 multipart 查看此示例 package docs , https://play.golang.org/p/084tWn65-d

关于file - 将 *multipart.FileHeader 的内容读入 []byte,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41755011/

相关文章:

java - 单击 JButton 从文件中读取

go - 创建一个函数来测试从接口(interface)编码/解码

go - golang RGBA.RGBA() 方法为什么使用 |和 <<?

go - 如何使用 TinyGo 解码 JWT token

c++ - 在 C++ 中将十六进制转换为字节

c - 在内存中存储各个位

python - 使用 python 将 JSON 对象写入文件

php - .htaccess 打开 .css 而不是 .php

algorithm - 一次读取、处理和写入一行是否高效?

c++ - 在 C++ 中将字节字符串拆分为 BYTES vector