我有一个迷你系统,前端会将base64格式的文件传递给后端。我使用 convert.frombase64string 将 base64 格式转换为字节数组,并使用文件流将文件保存到服务器中。
代码如下所示:
byte[] bytes = Convert.FromBase64String(file.Split(',')[1]);
using (var file = new FileStream("D:test.txt", FileMode.Create))
{
file.Write(bytes, 0, bytes.Length);
file.Flush();
}
var db = await _context.insertDB.FromSql("INSERT INTO blobTable (blob) VALUES ('" + bytes + "')").SingleAsync();
这是我从 blobTable 中选择的结果。
由于 Convert.FromBase64String() 的返回结果是字节数组。所以我决定将此值存储到我的数据库中,该数据库是带有 bytea [] 列的 postgres。
问题是这太奇怪了,当我试图
console.writeline(bytes);
结果打印为“system.byte[]”而不是字节值。这样“system.byte []”就存储到我的数据库中,而不是实际值。
谁能告诉我如何将 convert.frombase64string() 的返回值存储到 postgres bytea[] 列中?谢谢。