gpt4 book ai didi

c# - 使用 C# 将 FileStream 编码为 base64

转载 作者:IT王子 更新时间:2023-10-29 04:14:19 25 4
gpt4 key购买 nike

我知道如何将一个简单的字符串编码/解码为 base64

但是,如果数据已经写入 FileStream 对象,我该怎么做呢?假设我只能访问 FileStream 对象,而不能访问其中先前存储的原始数据。在将 FileStream 刷新到文件之前,我如何将 FileStream 编码为 base64

Ofc 我可以在将 FileStream 写入文件后打开我的文件并对其进行编码/解码,但我想一步完成所有这些操作,而不是一个接一个地执行两个文件操作。文件可能会更大,并且在刚刚保存了很短的时间后,加载、编码和再次保存也需要两倍的时间。

也许你们中有人知道更好的解决方案?我可以将 FileStream 转换为字符串,对字符串进行编码,然后将字符串转换回 FileStream 吗?或者我会做什么,这样的代码是什么样的?

最佳答案

一个简单的扩展方法

public static class Extensions
{
public static Stream ConvertToBase64(this Stream stream)
{
byte[] bytes;
using (var memoryStream = new MemoryStream())
{
stream.CopyTo(memoryStream);
bytes = memoryStream.ToArray();
}

string base64 = Convert.ToBase64String(bytes);
return new MemoryStream(Encoding.UTF8.GetBytes(base64));
}
}

关于c# - 使用 C# 将 FileStream 编码为 base64,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19134062/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com