c# - 二进制格式器到字符串

标签 c#

    BinaryFormatter formatter = new BinaryFormatter();

    using (MemoryStream m = new MemoryStream())
    {
        formatter.Serialize(m, list);
        StreamReader sr = new StreamReader(m);
        HiddenField1.Value = sr.ReadToEnd();
    }

我得到 HiddenField1.Value 的空白值。不确定我在做什么甚至可能吗?列表肯定已填充 (is a List<T>)

最佳答案

取决于您想要实现的目标...一种选择是将二进制流的内容显示为 Base64 字符串:

var memoryStream = new MemoryStream();
using(memoryStream)
{
    formatter.Serialize(memoryStream, list);
}
HiddenField1.Value = Convert.ToBase64String(memoryStream.ToArray());

关于c# - 二进制格式器到字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10903327/

相关文章:

c# - 工厂模式,返回一个泛型类并有一个参数

c# - 从 Windows 服务打印报告

c# - 尝试使用 AttributeRouting 创建默认的 ASP.NET MVC 路由

c# - 使用 C# 更新或删除 CSV 中的一行

c# - 使用 FileHelpers 填充零

c# - C# 十进制转整数

c# - 来自 C5 Generic Collection Library 的小型集合相对来说非常慢 - 有什么办法吗?

c# - 从多个线程访问数组

c# - 当以编程方式更新 TabItem 可见性时,不会触发 IsVisibleChanged

c# - Roslyn 编译器是否已集成到 Mono 项目中?