我正在尝试在Object List View返回的c#应用程序设置中保存字节数组(byte [])。
有人能给我一个如何在c#应用程序设置中保存字节数组的解决方案吗? 或者如何将byte []转换为字符串然后存储,然后检索并再次将其转换为字节数组并将其返回到对象列表视图。
答案 0 :(得分:25)
从字节数组中创建字符串的最常见方法之一是在Base-64中对它们进行编码:
string encoded = System.Convert.ToBase64String(toEncodeAsBytes);
使用
byte[] bytes = System.Convert.FromBase64String(encoded);
让你的字节回来。
答案 1 :(得分:4)
执行此操作的规范方法是通过base64将byte[]
转换为string
,反之亦然。
答案 2 :(得分:3)
通过不同的方式,您可以将Byte数组转换为字符串,将字符串转换为字节数组。像这样:
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将Byte Array转换为字符串,将字符串转换为字节数组。
希望,它应该对你有帮助。