gpt4 book ai didi

c# - 如何从文件中读取二进制格式的字符串?

转载 作者:太空宇宙 更新时间:2023-11-03 23:28:56 29 4
gpt4 key购买 nike

我想以一种无法(轻松)读取的方式将字符串存储在文件中。所以我使用这样的 BinaryFormatter:

using (FileStream fs = File.Create(sfDialog.FileName, 2048, FileOptions.None))
{
BinaryFormatter bf = new BinaryFormatter();
bf.Serialize(fs, Encoding.Unicode.GetBytes(this.BodyText));
}

其中 this.BodyText 是要保存的字符串。

现在我正在努力从文件中读回它。我尝试了 BinaryReader 但没有成功,所以我想,我必须使用 BinaryFormatter。我尝试了 Deserialize 方法,但它返回一个无法转换为字符串的对象。此外,Convert.ToBase64String 不能用于对象。

有人知道如何解决我的问题吗?

最佳答案

我同意其他人的意见,你应该使用一些适当的加密而不是这个。

但要回答您的实际问题:您正在序列化一个字节数组。这就是反序列化时得到的结果。

因此,在反序列化后,转换为 byte[] 并将此字节数组转换为字符串:

var s = Encoding.Unicode.GetString((byte[])deserializedValue);

关于c# - 如何从文件中读取二进制格式的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32948795/

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