【问题标题】:How to save byte[] in c# application settings如何在 C# 应用程序设置中保存 byte[]
【发布时间】:2012-09-02 01:07:05
【问题描述】:
我正在尝试在 Object List View 返回的 c# 应用程序设置中保存一个字节数组 (byte[])。
谁能给我一个关于如何在 c# 应用程序设置中保存字节数组的解决方案?
或者关于如何将 byte[] 转换为字符串然后存储,然后检索并再次将其转换为字节数组并将其返回给对象列表视图的一些技巧。
【问题讨论】:
标签:
c#
visual-studio-2010
listview
application-settings
【解决方案1】:
从字节数组生成字符串的最常见方法之一是将它们编码为Base-64:
string encoded = System.Convert.ToBase64String(toEncodeAsBytes);
使用
byte[] bytes = System.Convert.FromBase64String(encoded);
找回你的字节。
【解决方案2】:
执行此操作的规范方法是通过 base64 将 byte[] 转换为 string,反之亦然。
【解决方案3】:
通过不同的方式,您可以将字节数组转换为字符串,将字符串转换为字节数组。像这样:
1)
string asciiString = ASCIIEncoding.ASCII.GetString(byteArray);
byte[] byte = ASCIIEncoding.ASCII.GetBytes(asciiString);
2)
string base64String = System.Convert.ToBase64String(byteArray);
byte[] byte = System.Convert.FromBase64String(base64String);
3)
string utf8String = System.Text.Encoding.UTF8.GetString(byteArray);
byte[] byte = System.Text.Encoding.UTF8.GetBytes(utf8String);
您还可以使用 System.Text.Encoding.BigEndianUnicode、System.Text.Encoding.Unicode 和 System.Text.Encoding.UTF32 将字节数组转换为字符串,将字符串转换为字节数组。
希望对你有帮助。